class TestGetErrMsgSearchByRegexOrExactWordsPage(unittest.TestCase): def setUp(self): self.program = Program() def test_return_error_message_if_data_is_empty(self): expected = 'There are no data in database. Please return to main (R), and add an item.' result = self.program._get_err_msg_search_by_search_term_page( 'empty_data') self.assertEqual(expected, result) def test_return_error_message_if_response_is_not_valid(self): expected = 'Please enter non-empty characters or value (R)' result = self.program._get_err_msg_search_by_search_term_page( 'not_valid') self.assertEqual(expected, result) def test_return_error_message_if_empty_results_are_returned(self): expected = 'Retrieved result is empty.' result = self.program._get_err_msg_search_by_search_term_page( 'empty_results') self.assertEqual(expected, result)
class TestGetErrMsgSearchByTimeSpentPage(unittest.TestCase): def setUp(self): self.program = Program() self.menu = self.program.model_service.get_menu('search_page') def test_return_error_message_if_data_is_empty(self): expected = 'There are no data in database. Please return to main (R), and add an item.' result = self.program._get_err_msg_search_by_time_spent_page( 'empty_data') self.assertEqual(expected, result) def test_return_error_message_if_response_is_not_valid(self): expected = 'Please enter item in correct format (non-negative integer) or value (R)' result = self.program._get_err_msg_search_by_time_spent_page( 'not_valid') self.assertEqual(expected, result) def test_return_error_message_if_empty_results_are_returned(self): expected = 'Retrieved result is empty.' result = self.program._get_err_msg_search_by_time_spent_page( 'empty_results') self.assertEqual(expected, result)
class TestIsResValidSearchByDatePage(unittest.TestCase): def setUp(self): self.program = Program() self.menu = self.program.model_service.get_menu('search_page') def test_return_false_if_response_is_empty(self): expected = False result1 = self.program._is_res_valid_search_by_date_page('', ) result2 = self.program._is_res_valid_search_by_date_page(' ') self.assertEqual(expected, result1) self.assertEqual(expected, result2) def test_return_false_if_response_not_a_date_and_not_single_character( self): expected = False result1 = self.program._is_res_valid_search_by_date_page('aaaa') result2 = self.program._is_res_valid_search_by_date_page('a a b') self.assertEqual(expected, result1) self.assertEqual(expected, result2) def test_return_false_if_response_is_a_character_but_not_R_and_not_a_date( self): expected = False result1 = self.program._is_res_valid_search_by_date_page('a') result2 = self.program._is_res_valid_search_by_date_page('r') result3 = self.program._is_res_valid_search_by_date_page('*') self.assertEqual(expected, result1) self.assertEqual(expected, result2) self.assertEqual(expected, result3) def test_return_false_if_response_is_a_date_but_not_in_a_correct_format( self): expected = False result1 = self.program._is_res_valid_search_by_date_page('02-23-2019') result2 = self.program._is_res_valid_search_by_date_page('2019-02-31') result3 = self.program._is_res_valid_search_by_date_page('2019-13-02') self.assertEqual(expected, result1) self.assertEqual(expected, result2) self.assertEqual(expected, result3) def test_return_true_if_date_is_R_or_date_of_correct_format(self): expected = True result1 = self.program._is_res_valid_search_by_date_page('R') result2 = self.program._is_res_valid_search_by_date_page('2019-12-23') self.assertEqual(expected, result1) self.assertEqual(expected, result2)
def test_program(): instructions = [ "mask = XXXXXXXXXXXXXXXXXXXXXXXXXXXXX1XXXX0X", "mem[8] = 11", "mem[7] = 101", "mem[8] = 0", ] program = Program() program.run(instructions) assert program.memory[7] == 101 assert program.memory[8] == 64
class TestGetPageTitle(unittest.TestCase): def setUp(self): self.program = Program() def test_return_main_page_if_page_type_is_main(self): expected = 'Main Page' result = self.program._get_page_title('main') self.assertEqual(expected, result) def test_return_search_page_if_page_type_is_main(self): expected = 'Search Page' result = self.program._get_page_title('search_page') self.assertEqual(expected, result)
class TestIsResValidAddPageTimeAmt(unittest.TestCase): def setUp(self): self.program = Program() self.menu = self.program.model_service.get_menu('main') self.prompts = self.program.model_service.get_prompts() def test_return_false_if_response_is_empty(self): expected = False result1 = self.program._is_res_valid_add_page_time_amt('') result2 = self.program._is_res_valid_add_page_time_amt(' ') self.assertEqual(expected, result1) self.assertEqual(expected, result2) def test_return_false_if_is_not_non_negative_integer(self): expected = False result1 = self.program._is_res_valid_add_page_time_amt('-10') result2 = self.program._is_res_valid_add_page_time_amt('hello') result3 = self.program._is_res_valid_add_page_time_amt('*') self.assertEqual(expected, result1) self.assertEqual(expected, result2) self.assertEqual(expected, result3) def test_return_true_otherwise(self): expected = True result = self.program._is_res_valid_add_page_time_amt('60') result = self.program._is_res_valid_add_page_time_amt('0') self.assertEqual(expected, result)
class TestGetErrMsgAddPageTimeAmt(unittest.TestCase): def setUp(self): self.program = Program() self.menu = self.program.model_service.get_menu('main') self.prompts = self.program.model_service.get_prompts() def test_return_error_message_if_response_empty(self): expected = 'Please enter non-negative integer value' result1 = self.program._get_err_msg_add_page_time_amt('') result2 = self.program._get_err_msg_add_page_time_amt(' ') self.assertEqual(expected, result1) self.assertEqual(expected, result2) def test_return_error_message_if_is_not_non_negative_integer(self): expected = 'Please enter non-negative integer value' result1 = self.program._get_err_msg_add_page_time_amt('-10') result2 = self.program._get_err_msg_add_page_time_amt('hello') result3 = self.program._get_err_msg_add_page_time_amt('*') self.assertEqual(expected, result1) self.assertEqual(expected, result2) self.assertEqual(expected, result3) def test_return_empty_otherwise(self): expected = '' result1 = self.program._get_err_msg_add_page_time_amt('60') result2 = self.program._get_err_msg_add_page_time_amt('0') self.assertEqual(expected, result1) self.assertEqual(expected, result2)
class TestIsResValidSearchPage(unittest.TestCase): def setUp(self): self.program = Program() self.menu = self.program.model_service.get_menu('search_page') self.prompts = self.program.model_service.get_prompts() def test_return_false_if_response_is_empty(self): expected = False result1 = self.program._is_res_valid_search_page('', self.menu) result2 = self.program._is_res_valid_search_page(' ', self.menu) self.assertEqual(expected, result1) self.assertEqual(expected, result2) def test_return_false_if_response_is_other_than_letters(self): expected = False result1 = self.program._is_res_valid_main_page('*', self.menu) result2 = self.program._is_res_valid_main_page('1', self.menu) result3 = self.program._is_res_valid_main_page('ab cd', self.menu) self.assertEqual(expected, result1) self.assertEqual(expected, result2) self.assertEqual(expected, result3) def test_return_false_if_response_contains_more_than_one_character(self): expected = False result1 = self.program._is_res_valid_main_page('aa', self.menu) result2 = self.program._is_res_valid_main_page('abc', self.menu) result3 = self.program._is_res_valid_main_page('def', self.menu) self.assertEqual(expected, result1) self.assertEqual(expected, result2) self.assertEqual(expected, result3) def test_return_false_if_response_is_other_than_whats_assigned_to_menu( self): expected = False result1 = self.program._is_res_valid_main_page('z', self.menu) result2 = self.program._is_res_valid_main_page('g', self.menu) self.assertEqual(expected, result1) self.assertEqual(expected, result2) def test_return_true_if_response_is_correct(self): expected = True result1 = self.program._is_res_valid_main_page('a', self.menu) result2 = self.program._is_res_valid_main_page('e', self.menu) self.assertEqual(expected, result1) self.assertEqual(expected, result2)
def button_handle(): truth_table = { '1': True, '0': False, } path_get = ent_path.get() file_path_get = ent_path_frm.get() filename_get = ent_filesave.get() title_bool_get = truth_table[str(v_title.get())] dummy_bool_get = truth_table[str(v_dummy.get())] #call script script = Program(path_get, file_path_get, filename_get, title_bool_get, dummy_bool_get) #Run the script script.run()
class TestIsResValidSearchByRegexOrExactWordsPage(unittest.TestCase): def setUp(self): self.program = Program() self.menu = self.program.model_service.get_menu('search_page') def test_return_false_if_response_is_empty(self): expected = False result1 = self.program._is_res_valid_search_by_search_term_page('') result2 = self.program._is_res_valid_search_by_search_term_page(' ') self.assertEqual(expected, result1) self.assertEqual(expected, result2) def test_return_true_if_response_not_empty(self): expected = True result1 = self.program._is_res_valid_search_by_search_term_page( 'hello') result2 = self.program._is_res_valid_search_by_search_term_page('*') self.assertEqual(expected, result1) self.assertEqual(expected, result2)
class TestIsResValidAddPageEmployeeName(unittest.TestCase): def setUp(self): self.program = Program() self.menu = self.program.model_service.get_menu('main') self.prompts = self.program.model_service.get_prompts() def test_return_false_if_response_is_empty(self): expected = False result1 = self.program._is_res_valid_add_page_names('') result2 = self.program._is_res_valid_add_page_names(' ') self.assertEqual(expected, result1) self.assertEqual(expected, result2) def test_return_true_if_not_empty(self): expected = True result1 = self.program._is_res_valid_add_page_names('hello') result2 = self.program._is_res_valid_add_page_names('*') self.assertEqual(expected, result1) self.assertEqual(expected, result2)
class TestGetErrMsgAddPageNames(unittest.TestCase): def setUp(self): self.program = Program() self.menu = self.program.model_service.get_menu('main') self.prompts = self.program.model_service.get_prompts() def test_return_error_message_if_response_is_empty(self): expected = 'Please enter non-empty value' result1 = self.program._get_err_msg_add_page_names('') result2 = self.program._get_err_msg_add_page_names(' ') self.assertEqual(expected, result1) self.assertEqual(expected, result2) def test_return_empty_if_otherwise(self): expected = '' result1 = self.program._get_err_msg_add_page_names('hello') result2 = self.program._get_err_msg_add_page_names('*') self.assertEqual(expected, result1) self.assertEqual(expected, result2)
class TestIsResValidSearchByTimeSpentPage(unittest.TestCase): def setUp(self): self.program = Program() self.menu = self.program.model_service.get_menu('search_page') def test_return_false_if_response_is_empty(self): expected = False result = self.program._is_res_valid_search_by_time_page('') self.assertEqual(expected, result) def test_return_false_if_response_is_not_integer(self): expected = False result1 = self.program._is_res_valid_search_by_time_page('false') result2 = self.program._is_res_valid_search_by_time_page('hello world') result3 = self.program._is_res_valid_search_by_time_page('20 12') self.assertEqual(expected, result1) self.assertEqual(expected, result2) self.assertEqual(expected, result3) def test_return_false_if_response_is_not_non_negative_integer(self): expected = False result1 = self.program._is_res_valid_search_by_time_page('-10') result2 = self.program._is_res_valid_search_by_time_page('-100') self.assertEqual(expected, result1) self.assertEqual(expected, result2) def test_return_true_if_response_is_zero_or_positive_integer(self): expected = True result1 = self.program._is_res_valid_search_by_time_page('10') result2 = self.program._is_res_valid_search_by_time_page('100') result3 = self.program._is_res_valid_search_by_time_page('0') self.assertEqual(expected, result1) self.assertEqual(expected, result2) self.assertEqual(expected, result3)
def test_example_program(self): ip_reg = 0 program_contents = [ "seti 5 0 1", "seti 6 0 2", "addi 0 1 0", "addr 1 2 3", "setr 1 0 0", "seti 8 0 4", "seti 9 0 5" ] program = Program(ip_reg, program_contents) program.run() self.assertEqual(program.get_register_value(0), 6) self.assertEqual(program.get_register_value(1), 5) self.assertEqual(program.get_register_value(2), 6) self.assertEqual(program.get_register_value(3), 0) self.assertEqual(program.get_register_value(4), 0) self.assertEqual(program.get_register_value(5), 9)
class TestGetErrMsgMainPage(unittest.TestCase): def setUp(self): self.program = Program() self.menu = self.program.model_service.get_menu('main') def test_return_error_message_if_menu_is_empty(self): expected = "Sorry. There are no items in menu. Please exit program (Ctrl + c) and try again." result = self.program._get_err_msg_main_page('h', []) self.assertEqual(expected, result) def test_return_error_message_if_response_is_empty(self): expected = "Please enter correct value ({}-{})".format( chr(97), chr(97 + len(self.menu) - 1)) result = self.program._get_err_msg_main_page('', self.menu) self.assertEqual(expected, result) def test_return_error_message_if_response_is_other_than_letters(self): expected = "Please enter correct value ({}-{})".format( chr(97), chr(97 + len(self.menu) - 1)) result1 = self.program._get_err_msg_main_page('*', self.menu) result2 = self.program._get_err_msg_main_page('1', self.menu) result3 = self.program._get_err_msg_main_page(' ', self.menu) self.assertEqual(expected, result1) self.assertEqual(expected, result2) self.assertEqual(expected, result3) def test_return_error_message_if_response_is_other_than_whats_assigned_to_menu( self): expected = "Please enter correct value ({}-{})".format( chr(97), chr(97 + len(self.menu) - 1)) result1 = self.program._get_err_msg_main_page('z', self.menu) result2 = self.program._get_err_msg_main_page('d', self.menu) self.assertEqual(expected, result1) self.assertEqual(expected, result2) def test_return_none_if_response_is_within_whats_assigned(self): expected = '' result1 = self.program._get_err_msg_main_page('a', self.menu) result2 = self.program._get_err_msg_main_page('c', self.menu) self.assertEqual(expected, result1) self.assertEqual(expected, result2)
def setUp(self): self.program = Program() self.menu = self.program.model_service.get_menu('search_page')
class TestGetErrMsgSearchByDatePage(unittest.TestCase): def setUp(self): self.program = Program() self.menu = self.program.model_service.get_menu('search_page') def test_return_error_message_if_data_is_empty(self): expected = 'There are no data in database. Please return to main (R), and add an item.' result1 = self.program._get_err_msg_search_by_date_page( '', 'empty_data') result2 = self.program._get_err_msg_search_by_date_page( 'hello', 'empty_data') self.assertEqual(expected, result1) self.assertEqual(expected, result2) def test_retrun_error_message_if_response_is_empty(self): expected = 'Please enter item in correct format (yyyy-mm-dd) or value (R)' result1 = self.program._get_err_msg_search_by_date_page( '', 'not_valid') result2 = self.program._get_err_msg_search_by_date_page( ' ', 'not_valid') self.assertEqual(expected, result1) self.assertEqual(expected, result2) def test_return_error_message_if_response_not_a_date_and_not_single_character( self): expected = 'Please enter item in correct format (yyyy-mm-dd) or value (R)' result1 = self.program._get_err_msg_search_by_date_page( 'aaaa', 'not_valid') result2 = self.program._get_err_msg_search_by_date_page( 'a a b', 'not_valid') self.assertEqual(expected, result1) self.assertEqual(expected, result2) def test_return_error_message_if_response_is_a_character_but_not_R_and_not_a_date( self): expected = 'Please enter item in correct format (yyyy-mm-dd) or value (R)' result1 = self.program._get_err_msg_search_by_date_page( 'a', 'not_valid') result2 = self.program._get_err_msg_search_by_date_page( 'r', 'not_valid') result3 = self.program._get_err_msg_search_by_date_page( '*', 'not_valid') self.assertEqual(expected, result1) self.assertEqual(expected, result2) self.assertEqual(expected, result3) def test_return_error_message_if_response_is_a_date_but_not_in_a_correct_format( self): expected = 'Please enter item in correct format (yyyy-mm-dd) or value (R)' result = self.program._get_err_msg_search_by_date_page( '02-23-2019', 'not_valid') self.assertEqual(expected, result) def test_return_error_message_if_day_is_out_of_range(self): expected = 'Day is out of range for month' result = self.program._get_err_msg_search_by_date_page( '2019-02-31', 'not_valid') self.assertEqual(expected, result) def test_return_error_message_if_month_is_out_of_range(self): expected = 'Month must be in 1..12' result = self.program._get_err_msg_search_by_date_page( '2019-13-02', 'not_valid') self.assertEqual(expected, result) def test_return_empty_response_if_response_is_R_or_of_correct_date(self): expected = '' result1 = self.program._get_err_msg_search_by_date_page( 'R', 'not_valid') result2 = self.program._get_err_msg_search_by_date_page( '2019-12-23', 'not_valid') self.assertEqual(expected, result1) self.assertEqual(expected, result2) def test_return_error_message_if_response_is_of_correct_date_but_has_empty_data( self): expected = 'Retrieved result is empty.' result = self.program._get_err_msg_search_by_date_page( '2019-02-23', 'empty_results') self.assertEqual(expected, result)
class TestGetErrMsgSearchPage(unittest.TestCase): def setUp(self): self.program = Program() self.menu = self.program.model_service.get_menu('search_page') def test_return_false_if_menu_has_no_items(self): expected = "Sorry. There are no items in menu. Please exit program (Ctrl + c) and try again." result = self.program._get_err_msg_search_page('', []) self.assertEqual(expected, result) def test_return_error_message_if_response_is_empty(self): expected = "Please enter correct value ({}-{})".format( chr(97), chr(97 + len(self.menu) - 1)) result1 = self.program._get_err_msg_search_page('', self.menu) result2 = self.program._get_err_msg_search_page(' ', self.menu) self.assertEqual(expected, result1) self.assertEqual(expected, result2) def test_return_error_message_if_response_is_other_than_letters(self): expected = "Please enter correct value ({}-{})".format( chr(97), chr(97 + len(self.menu) - 1)) result1 = self.program._get_err_msg_search_page('*', self.menu) result2 = self.program._get_err_msg_search_page('1', self.menu) result3 = self.program._get_err_msg_search_page('ab cd', self.menu) self.assertEqual(expected, result1) self.assertEqual(expected, result2) self.assertEqual(expected, result3) def test_return_error_message_if_response_contains_more_than_one_character( self): expected = "Please enter correct value ({}-{})".format( chr(97), chr(97 + len(self.menu) - 1)) result1 = self.program._get_err_msg_search_page('aa', self.menu) result2 = self.program._get_err_msg_search_page('abc', self.menu) result3 = self.program._get_err_msg_search_page('def', self.menu) self.assertEqual(expected, result1) self.assertEqual(expected, result2) self.assertEqual(expected, result3) def test_return_error_message_if_response_is_other_than_whats_assigned_to_menu( self): expected = "Please enter correct value ({}-{})".format( chr(97), chr(97 + len(self.menu) - 1)) result1 = self.program._get_err_msg_search_page('z', self.menu) result2 = self.program._get_err_msg_search_page('g', self.menu) self.assertEqual(expected, result1) self.assertEqual(expected, result2) def test_return_empty_if_response_is_correct(self): expected = '' result1 = self.program._get_err_msg_search_page('a', self.menu) result2 = self.program._get_err_msg_search_page('e', self.menu) self.assertEqual(expected, result1) self.assertEqual(expected, result2)
def setUp(self): self.program = Program() self.menu = self.program.model_service.get_menu('main') self.prompts = self.program.model_service.get_prompts()
class TestIsResValidDisplayPage(unittest.TestCase): def setUp(self): self.program = Program() def test_return_false_if_response_is_empty(self): expected = False result1 = self.program._is_res_valid_display_page('', 'search_page') result2 = self.program._is_res_valid_display_page( ' ', 'search_page') result3 = self.program._is_res_valid_display_page('', 'add_page') result4 = self.program._is_res_valid_display_page(' ', 'add_page') self.assertEqual(expected, result1) self.assertEqual(expected, result2) self.assertEqual(expected, result3) self.assertEqual(expected, result4) def test_return_false_if_incorrect_response_is_given_for_display_from_search_page( self): expected = False result1 = self.program._is_res_valid_display_page('*', 'search_page') result2 = self.program._is_res_valid_display_page('n', 'search_page') result3 = self.program._is_res_valid_display_page('p', 'search_page') result4 = self.program._is_res_valid_display_page('r', 'search_page') result5 = self.program._is_res_valid_display_page( 'hello world', 'search_page') result6 = self.program._is_res_valid_display_page('0', 'search_page') self.assertEqual(expected, result1) self.assertEqual(expected, result2) self.assertEqual(expected, result3) self.assertEqual(expected, result4) self.assertEqual(expected, result5) self.assertEqual(expected, result6) def test_return_false_if_incorrect_response_is_given_for_display_from_add_page( self): expected = False result1 = self.program._is_res_valid_display_page('*', 'add_page') result2 = self.program._is_res_valid_display_page('n', 'add_page') result3 = self.program._is_res_valid_display_page('p', 'add_page') result4 = self.program._is_res_valid_display_page('r', 'add_page') result5 = self.program._is_res_valid_display_page( 'hello world', 'add_page') result6 = self.program._is_res_valid_display_page('0', 'add_page') result7 = self.program._is_res_valid_display_page('N', 'add_page') result8 = self.program._is_res_valid_display_page('P', 'add_page') self.assertEqual(expected, result1) self.assertEqual(expected, result2) self.assertEqual(expected, result3) self.assertEqual(expected, result4) self.assertEqual(expected, result5) self.assertEqual(expected, result6) self.assertEqual(expected, result7) self.assertEqual(expected, result8) def test_return_true_if_correct_response_is_given(self): expected = True result1 = self.program._is_res_valid_display_page('N', 'search_page') result2 = self.program._is_res_valid_display_page('P', 'search_page') result3 = self.program._is_res_valid_display_page('R', 'search_page') result4 = self.program._is_res_valid_display_page('R', 'add_page') self.assertEqual(expected, result1) self.assertEqual(expected, result2) self.assertEqual(expected, result3) self.assertEqual(expected, result4)
class TestGetErrMsgDisplayPage(unittest.TestCase): def setUp(self): self.program = Program() def test_return_error_message_if_response_is_empty_for_display_from_add_page( self): expected = "Please choose correct value(s) (R)" result = self.program._get_err_msg_display_page('', 'add_page') self.assertEqual(expected, result) def test_return_error_message_if_response_is_empty_for_display_from_search_page( self): expected = "Please choose correct value(s) (N,P,R)" result = self.program._get_err_msg_display_page('', 'search_page') self.assertEqual(expected, result) def test_return_error_message_if_incorrect_response_is_given_for_display_from_add_page( self): expected = "Please choose correct value(s) (R)" result1 = self.program._get_err_msg_display_page('*', 'add_page') result2 = self.program._get_err_msg_display_page('n', 'add_page') result3 = self.program._get_err_msg_display_page('p', 'add_page') result4 = self.program._get_err_msg_display_page('r', 'add_page') result5 = self.program._get_err_msg_display_page( 'hello world', 'add_page') result6 = self.program._get_err_msg_display_page('0', 'add_page') result7 = self.program._get_err_msg_display_page('N', 'add_page') result8 = self.program._get_err_msg_display_page('P', 'add_page') self.assertEqual(expected, result1) self.assertEqual(expected, result2) self.assertEqual(expected, result3) self.assertEqual(expected, result4) self.assertEqual(expected, result5) self.assertEqual(expected, result6) self.assertEqual(expected, result7) self.assertEqual(expected, result8) def test_return_error_message_if_incorrect_response_is_given_for_display_from_search_page( self): expected = "Please choose correct value(s) (N,P,R)" result1 = self.program._get_err_msg_display_page('*', 'search_page') result2 = self.program._get_err_msg_display_page('n', 'search_page') result3 = self.program._get_err_msg_display_page('p', 'search_page') result4 = self.program._get_err_msg_display_page('r', 'search_page') result5 = self.program._get_err_msg_display_page( 'hello world', 'search_page') result6 = self.program._get_err_msg_display_page('0', 'search_page') self.assertEqual(expected, result1) self.assertEqual(expected, result2) self.assertEqual(expected, result3) self.assertEqual(expected, result4) self.assertEqual(expected, result5) self.assertEqual(expected, result6)
def setUp(self): self.program = Program()