h_run()
{
file="$(atf_get_srcdir)/tests/${1}"
export COLUMNS=80
export LINES=24
$(atf_get_srcdir)/director $2 \
-T $(atf_get_srcdir) \
-t atf \
-I $(atf_get_srcdir)/tests \
-C $(atf_get_srcdir)/check_files \
-s $(atf_get_srcdir)/slave $file || atf_fail "test ${file} failed"
}
atf_test_case startup
startup_head()
{
atf_set "descr" "Checks curses initialisation sequence"
}
startup_body()
{
h_run start
}
atf_test_case addch
addch_head()
{
atf_set "descr" "Tests adding a chtype to stdscr"
}
addch_body()
{
h_run addch
}
atf_test_case addchstr
addchstr_head()
{
atf_set "descr" "Tests adding a chtype string to stdscr"
}
addchstr_body()
{
h_run addchstr
}
atf_test_case addchnstr
addchnstr_head()
{
atf_set "descr" "Tests adding bytes from a chtype string to stdscr"
}
addchnstr_body()
{
h_run addchnstr
}
atf_test_case addstr
addstr_head()
{
atf_set "descr" "Tests adding bytes from a string to stdscr"
}
addstr_body()
{
h_run addstr
}
atf_test_case addnstr
addnstr_head()
{
atf_set "descr" "Tests adding bytes from a string to stdscr"
}
addnstr_body()
{
h_run addnstr
}
atf_test_case getch
getch_head()
{
atf_set "descr" "Checks reading a character input"
}
getch_body()
{
h_run getch
}
atf_test_case timeout
timeout_head()
{
atf_set "descr" "Checks timeout when reading a character"
}
timeout_body()
{
h_run timeout
}
atf_test_case window
window_head()
{
atf_set "descr" "Checks window creation"
}
window_body()
{
h_run window
}
atf_test_case wborder
wborder_head()
{
atf_set "descr" "Checks drawing a border around a window"
}
wborder_body()
{
h_run wborder
}
atf_test_case box
box_head()
{
atf_set "descr" "Checks drawing a box around a window"
}
box_body()
{
h_run box
}
atf_test_case wprintw
wprintw_head()
{
atf_set "descr" "Checks printing to a window"
}
wprintw_body()
{
h_run wprintw
}
atf_test_case wscrl
wscrl_head()
{
atf_set "descr" "Check window scrolling"
}
wscrl_body()
{
h_run wscrl
}
atf_test_case mvwin
mvwin_head()
{
atf_set "descr" "Check moving a window"
}
mvwin_body()
{
h_run mvwin
}
atf_test_case getstr
getstr_head()
{
atf_set "descr" "Check getting a string from input"
}
getstr_body()
{
h_run getstr
}
atf_test_case termattrs
termattrs_head()
{
atf_set "descr" "Check the terminal attributes"
}
termattrs_body()
{
h_run termattrs
}
atf_test_case assume_default_colors
assume_default_colors_head()
{
atf_set "descr" "Check setting the default color pair"
}
assume_default_colors_body()
{
h_run assume_default_colors
}
atf_test_case attributes
attributes_head()
{
atf_set "descr" "Check setting, clearing and getting of attributes"
}
attributes_body()
{
h_run attributes
}
atf_test_case beep
beep_head()
{
atf_set "descr" "Check sending a beep"
}
beep_body()
{
h_run beep
}
atf_test_case background
background_head()
{
atf_set "descr" "Check setting background character and attributes for both stdscr and a window."
}
background_body()
{
h_run background
}
atf_test_case can_change_color
can_change_color_head()
{
atf_set "descr" "Check if the terminal can change colours"
}
can_change_color_body()
{
h_run can_change_color
}
atf_test_case cbreak
cbreak_head()
{
atf_set "descr" "Check cbreak mode works"
}
cbreak_body()
{
h_run cbreak
}
atf_test_case chgat
chgat_head()
{
atf_set "descr" "Check changing attributes works"
}
chgat_body()
{
h_run chgat
}
atf_test_case clear
clear_head()
{
atf_set "descr" "Check clear and erase work"
}
clear_body()
{
h_run clear
}
atf_test_case copywin
copywin_head()
{
atf_set "descr" "Check all the modes of copying a window work"
}
copywin_body()
{
h_run copywin
}
atf_test_case curs_set
curs_set_head()
{
atf_set "descr" "Check setting the cursor visibility works"
}
curs_set_body()
{
h_run curs_set
}
atf_test_case define_key
define_key_head()
{
atf_set "descr" "Check defining a key and removing the definition works"
}
define_key_body()
{
h_run define_key
}
atf_test_case delay_output
delay_output_head()
{
atf_set "descr" "Check that padding is inserted when delaying output"
}
delay_output_body()
{
h_run delay_output -v
}
atf_test_case derwin
derwin_head()
{
atf_set "descr" "Check derived subwindow creation behaves correctly."
}
derwin_body()
{
h_run derwin
}
atf_test_case doupdate
doupdate_head()
{
atf_set "descr" "Check doupdate performs an update"
}
doupdate_body()
{
h_run doupdate
}
atf_test_case dupwin
dupwin_head()
{
atf_set "descr" "Check duplicating a window works"
}
dupwin_body()
{
h_run dupwin
}
atf_test_case erasechar
erasechar_head()
{
atf_set "descr" "Validate erase char can be retrieved"
}
erasechar_body()
{
h_run erasechar
}
atf_test_case flash
flash_head()
{
atf_set "descr" "Validate curses can flash the screen"
}
flash_body()
{
h_run flash
}
atf_test_case getattrs
getattrs_head()
{
atf_set "descr" "Validate curses can get and set attributes on a window"
}
getattrs_body()
{
h_run getattrs
}
atf_test_case bkgdset
bkgdset_head()
{
atf_set "descr" "Validate curses set the background attributes on stdscr"
}
bkgdset_body()
{
h_run bkgdset
}
atf_test_case getbkgd
getbkgd_head()
{
atf_set "descr" "Validate curses getting the background attributes on stdscr"
}
getbkgd_body()
{
h_run getbkgd
}
atf_test_case getcurx
getcurx_head()
{
atf_set "descr" "Validate curses getting cursor locations in a window"
}
getcurx_body()
{
h_run getcurx
}
atf_test_case getmaxx
getmaxx_head()
{
atf_set "descr" "Validate curses getting the maximum x value of a window"
}
getmaxx_body()
{
h_run getmaxx
}
atf_test_case getmaxy
getmaxy_head()
{
atf_set "descr" "Validate curses getting the maximum y value of a window"
}
getmaxy_body()
{
h_run getmaxy
}
atf_test_case getnstr
getnstr_head()
{
atf_set "descr" "Check getting a string with a limit"
}
getnstr_body()
{
h_run getnstr
}
atf_test_case getparx
getparx_head()
{
atf_set "descr" "Check getting the location of a window relative to its parent"
}
getparx_body()
{
h_run getparx
}
atf_test_case has_colors
has_colors_head()
{
atf_set "descr" "Check if the terminal can support colours"
}
has_colors_body()
{
h_run has_colors
}
atf_test_case has_ic
has_ic_head()
{
atf_set "descr" "Check if the terminal can insert characters and lines"
}
has_ic_body()
{
h_run has_ic
}
atf_test_case hline
hline_head()
{
atf_set "descr" "Draw a horizontal line"
}
hline_body()
{
h_run hline
}
atf_test_case inch
inch_head()
{
atf_set "descr" "Get the character under the cursor on stdscr"
}
inch_body()
{
h_run inch
}
atf_test_case inchnstr
inchnstr_head()
{
atf_set "descr" "Get a limited chtype string from the screen"
}
inchnstr_body()
{
h_run inchnstr
}
atf_test_case init_color
init_color_head()
{
atf_set "descr" "Set a custom color entry"
}
init_color_body()
{
h_run init_color
}
atf_test_case innstr
innstr_head()
{
atf_set "descr" "Get a limited string starting at the cursor"
}
innstr_body()
{
h_run innstr
}
atf_test_case is_linetouched
is_linetouched_head()
{
atf_set "descr" "Check if a line has been modified in a window"
}
is_linetouched_body()
{
h_run is_linetouched
}
atf_test_case is_wintouched
is_wintouched_head()
{
atf_set "descr" "Check if a window has been modified"
}
is_wintouched_body()
{
h_run is_wintouched
}
atf_test_case keyname
keyname_head()
{
atf_set "descr" "Convert integers into printable key names"
}
keyname_body()
{
h_run keyname
}
atf_test_case keyok
keyok_head()
{
atf_set "descr" "Check the ability to disable interpretation of a multichar key sequence"
}
keyok_body()
{
h_run keyok
}
atf_test_case killchar
killchar_head()
{
atf_set "descr" "Get the value of the terminals kill character"
}
killchar_body()
{
h_run killchar
}
atf_test_case meta
meta_head()
{
atf_set "descr" "Check setting and clearing the meta flag on a window"
}
meta_body()
{
h_run meta
}
atf_test_case mvaddch
mvaddch_head()
{
atf_set "descr" "Move the cursor and add a character to stdscr"
}
mvaddch_body()
{
h_run mvaddch
}
atf_test_case mvaddchnstr
mvaddchnstr_head()
{
atf_set "descr" "Move the cursor and add a character string to stdscr"
}
mvaddchnstr_body()
{
h_run mvaddchnstr
}
atf_test_case mvaddchstr
mvaddchstr_head()
{
atf_set "descr" "Move the cursor and add a ch string to stdscr"
}
mvaddchstr_body()
{
h_run mvaddchstr
}
atf_test_case mvaddnstr
mvaddnstr_head()
{
atf_set "descr" "Move the cursor and add a limited string to stdscr"
}
mvaddnstr_body()
{
h_run mvaddnstr
}
atf_test_case mvaddstr
mvaddstr_head()
{
atf_set "descr" "Move the cursor and add a string to stdscr"
}
mvaddstr_body()
{
h_run mvaddstr
}
atf_test_case mvchgat
mvchgat_head()
{
atf_set "descr" "Change the attributes on the screen"
}
mvchgat_body()
{
h_run mvchgat
}
atf_test_case mvcur
mvcur_head()
{
atf_set "descr" "Move the cursor on the screen"
}
mvcur_body()
{
h_run mvcur
}
atf_test_case mvderwin
mvderwin_head()
{
atf_set "descr" "Move the mapping of a region relative to the parent"
}
mvderwin_body()
{
h_run mvderwin
}
atf_test_case mvgetnstr
mvgetnstr_head()
{
atf_set "descr" "Move the cursor and get a limited number of characters"
}
mvgetnstr_body()
{
h_run mvgetnstr
}
atf_test_case mvgetstr
mvgetstr_head()
{
atf_set "descr" "Move the cursor and get characters"
}
mvgetstr_body()
{
h_run mvgetstr
}
atf_test_case mvhline
mvhline_head()
{
atf_set "descr" "Move the cursor and draw a horizontal line"
}
mvhline_body()
{
h_run mvhline
}
atf_test_case mvinchnstr
mvinchnstr_head()
{
atf_set "descr" "Move the cursor read characters - tests both mvinchstr and mvinchnstr"
}
mvinchnstr_body()
{
h_run mvinchnstr
}
atf_test_case mvprintw
mvprintw_head()
{
atf_set "descr" "Move the cursor and print a string"
}
mvprintw_body()
{
h_run mvprintw
}
atf_test_case mvscanw
mvscanw_head()
{
atf_set "descr" "Move the cursor and scan for input patterns"
}
mvscanw_body()
{
h_run mvscanw
}
atf_test_case mvvline
mvvline_head()
{
atf_set "descr" "Move the cursor and draw a vertical line"
}
mvvline_body()
{
h_run mvvline
}
atf_test_case pad
pad_head()
{
atf_set "descr" "Test the newpad, subpad, pnoutrefresh and prefresh functions"
}
pad_body()
{
h_run pad
}
atf_test_case nocbreak
nocbreak_head()
{
atf_set "descr" "Test that the nocbreak call returns the terminal to canonical character processing"
}
nocbreak_body()
{
h_run nocbreak
}
atf_test_case nodelay
nodelay_head()
{
atf_set "descr" "Test that the nodelay call causes wget to not block"
}
nodelay_body()
{
h_run nodelay
}
atf_init_test_cases()
{
atf_add_test_case startup
atf_add_test_case addch
atf_add_test_case addchstr
atf_add_test_case addchnstr
atf_add_test_case addstr
atf_add_test_case addnstr
atf_add_test_case getch
atf_add_test_case timeout
atf_add_test_case window
atf_add_test_case wborder
atf_add_test_case box
atf_add_test_case wprintw
atf_add_test_case wscrl
atf_add_test_case mvwin
atf_add_test_case getstr
atf_add_test_case termattrs
atf_add_test_case can_change_color
atf_add_test_case assume_default_colors
atf_add_test_case attributes
atf_add_test_case beep
atf_add_test_case background
atf_add_test_case cbreak
atf_add_test_case chgat
atf_add_test_case clear
atf_add_test_case copywin
atf_add_test_case curs_set
atf_add_test_case define_key
# atf_add_test_case delay_output # not working
atf_add_test_case derwin
atf_add_test_case doupdate
atf_add_test_case dupwin
atf_add_test_case erasechar
atf_add_test_case flash
atf_add_test_case getattrs
atf_add_test_case bkgdset
atf_add_test_case getbkgd
atf_add_test_case getcurx
atf_add_test_case getmaxx
atf_add_test_case getmaxy
atf_add_test_case getnstr
atf_add_test_case getparx
atf_add_test_case has_colors
atf_add_test_case has_ic
atf_add_test_case hline
atf_add_test_case inch
atf_add_test_case inchnstr
atf_add_test_case init_color
atf_add_test_case innstr
atf_add_test_case is_linetouched
atf_add_test_case is_wintouched
atf_add_test_case keyname
atf_add_test_case keyok
atf_add_test_case killchar
atf_add_test_case meta
atf_add_test_case mvaddch
atf_add_test_case mvaddchnstr
atf_add_test_case mvaddchstr
atf_add_test_case mvaddnstr
atf_add_test_case mvaddstr
atf_add_test_case mvchgat
atf_add_test_case mvcur
atf_add_test_case mvderwin
atf_add_test_case mvgetnstr
atf_add_test_case mvgetstr
atf_add_test_case mvhline
atf_add_test_case mvinchnstr
atf_add_test_case mvprintw
atf_add_test_case mvscanw
atf_add_test_case mvvline
atf_add_test_case pad
atf_add_test_case nocbreak
atf_add_test_case nodelay
}