def test_simple_set_editor_use_ordered_selected(self): # Initiate with non-alphabetical list model = ListModel(value=["two", "one"]) with reraise_exceptions(), self.setup_gui( model, get_view(ordered=True)) as editor: self.assertEqual(get_list_items(editor._unused), ["four", "three"]) # Used list maintains the order self.assertEqual(get_list_items(editor._used), ["two", "one"]) click_on_item(editor, 1, in_used=False) process_cascade_events() self.assertTrue(is_control_enabled(editor._use)) self.assertFalse(is_control_enabled(editor._unuse)) click_button(editor._use) process_cascade_events() self.assertEqual(get_list_items(editor._unused), ["four"]) # Button inserts at the top self.assertEqual(get_list_items(editor._used), ["three", "two", "one"]) self.assertEqual(editor._get_selected_strings(editor._used), ["three"])
def test_simple_set_editor_default_selection_unused(self): with store_exceptions_on_all_threads(): gui, editor = self.setup_gui(ListModel(), get_view()) self.assertEqual(get_list_items(editor._unused), ["four", "three"]) self.assertEqual(get_list_items(editor._used), ["one", "two"]) click_button(editor._use) gui.process_events() # Button inserts at the top self.assertEqual(get_list_items(editor._unused), ["three"]) self.assertEqual(get_list_items(editor._used), ["four", "one", "two"])
def test_simple_set_editor_default_selection_unused(self): with reraise_exceptions(), self.setup_gui(ListModel(), get_view()) as editor: self.assertEqual(get_list_items(editor._unused), ["four", "three"]) self.assertEqual(get_list_items(editor._used), ["one", "two"]) click_button(editor._use) process_cascade_events() # Button inserts at the top self.assertEqual(get_list_items(editor._unused), ["three"]) self.assertEqual(get_list_items(editor._used), ["four", "one", "two"])
def test_simple_set_editor_default_selection_used(self): # When all items are used, top used item is selected by default list_edit = ListModel(value=["one", "two", "three", "four"]) with reraise_exceptions(), self.setup_gui(list_edit, get_view()) as editor: self.assertEqual(get_list_items(editor._unused), []) self.assertEqual(get_list_items(editor._used), ["four", "one", "three", "two"]) click_button(editor._unuse) process_cascade_events() # Button inserts at the top self.assertEqual(get_list_items(editor._unused), ["four"]) self.assertEqual(get_list_items(editor._used), ["one", "three", "two"])
def test_simple_set_editor_move_down(self): with reraise_exceptions(), self.setup_gui( ListModel(), get_view(ordered=True)) as editor: self.assertEqual(get_list_items(editor._unused), ["four", "three"]) self.assertEqual(get_list_items(editor._used), ["one", "two"]) click_on_item(editor, 0, in_used=True) process_cascade_events() self.assertFalse(is_control_enabled(editor._up)) self.assertTrue(is_control_enabled(editor._down)) click_button(editor._down) process_cascade_events() self.assertEqual(get_list_items(editor._unused), ["four", "three"]) self.assertEqual(get_list_items(editor._used), ["two", "one"])
def test_simple_set_editor_move_up(self): with store_exceptions_on_all_threads(): gui, editor = self.setup_gui(ListModel(), get_view(ordered=True)) self.assertEqual(get_list_items(editor._unused), ["four", "three"]) self.assertEqual(get_list_items(editor._used), ["one", "two"]) click_on_item(editor, 1, in_used=True) gui.process_events() self.assertTrue(is_control_enabled(editor._up)) self.assertFalse(is_control_enabled(editor._down)) click_button(editor._up) gui.process_events() self.assertEqual(get_list_items(editor._unused), ["four", "three"]) self.assertEqual(get_list_items(editor._used), ["two", "one"])
def test_simple_set_editor_use_all_button(self): with reraise_exceptions(), self.setup_gui(ListModel(), get_view()) as editor: self.assertEqual(get_list_items(editor._unused), ["four", "three"]) self.assertEqual(get_list_items(editor._used), ["one", "two"]) click_on_item(editor, 1, in_used=False) process_cascade_events() self.assertTrue(is_control_enabled(editor._use_all)) self.assertFalse(is_control_enabled(editor._unuse_all)) click_button(editor._use_all) process_cascade_events() self.assertEqual(get_list_items(editor._unused), []) # Button inserts at the end self.assertEqual(get_list_items(editor._used), ["one", "two", "four", "three"])
def test_simple_set_editor_unuse_all_button(self): with store_exceptions_on_all_threads(): gui, editor = self.setup_gui(ListModel(), get_view()) self.assertEqual(get_list_items(editor._unused), ["four", "three"]) self.assertEqual(get_list_items(editor._used), ["one", "two"]) click_on_item(editor, 0, in_used=True) gui.process_events() self.assertFalse(is_control_enabled(editor._use_all)) self.assertTrue(is_control_enabled(editor._unuse_all)) click_button(editor._unuse_all) gui.process_events() # Button inserts at the end self.assertEqual(get_list_items(editor._unused), ["four", "three", "one", "two"]) self.assertEqual(get_list_items(editor._used), [])
def test_simple_set_editor_use_button(self): with store_exceptions_on_all_threads(): # Initiate with non-alphabetical list gui, editor = self.setup_gui(ListModel(value=["two", "one"]), get_view()) self.assertEqual(get_list_items(editor._unused), ["four", "three"]) # Used list is sorted alphabetically self.assertEqual(get_list_items(editor._used), ["one", "two"]) click_on_item(editor, 1, in_used=False) gui.process_events() self.assertTrue(is_control_enabled(editor._use)) self.assertFalse(is_control_enabled(editor._unuse)) click_button(editor._use) gui.process_events() self.assertEqual(get_list_items(editor._unused), ["four"]) # Button inserts at the top self.assertEqual(get_list_items(editor._used), ["three", "one", "two"]) self.assertEqual(editor._get_selected_strings(editor._used), [])