def setUp(self): """ Create the UI and setup necessary options :return: None """ self.build_settings() self.setup_application() Registry.create() with patch('openlp.core.lib.projector.db.init_url') as mocked_init_url: mocked_init_url.return_value = 'sqlite://' self.projectordb = ProjectorDB() self.projector_form = ProjectorEditForm( projectordb=self.projectordb)
def setUp(self): """ Create the UI and setup necessary options :return: None """ self.build_settings() self.setup_application() Registry.create() with patch("openlp.core.lib.projector.db.init_url") as mocked_init_url: mocked_init_url.return_value = "sqlite://" self.projectordb = ProjectorDB() self.projector_form = ProjectorEditForm(projectordb=self.projectordb)
def setUp(self): """ Create the UI and setup necessary options :return: None """ self.build_settings() self.setup_application() Registry.create() with patch('openlp.core.lib.projector.db.init_url') as mocked_init_url: if os.path.exists(TEST_DB): os.unlink(TEST_DB) mocked_init_url.return_value = 'sqlite:///' + TEST_DB self.projectordb = ProjectorDB() self.projector_form = ProjectorEditForm(projectordb=self.projectordb)
class TestProjectorEditForm(TestCase, TestMixin): """ Test the methods in the ProjectorEditForm class """ def setUp(self): """ Create the UI and setup necessary options :return: None """ self.build_settings() self.setup_application() Registry.create() with patch('openlp.core.lib.projector.db.init_url') as mocked_init_url: if os.path.exists(TEST_DB): os.unlink(TEST_DB) mocked_init_url.return_value = 'sqlite:///' + TEST_DB self.projectordb = ProjectorDB() self.projector_form = ProjectorEditForm(projectordb=self.projectordb) def tearDown(self): """ Close database session. Delete all C++ objects at end so we don't segfault. :return: None """ self.projectordb.session.close() del self.projector_form self.destroy_settings() @patch('openlp.core.ui.projector.editform.QtWidgets.QDialog.exec') def test_edit_form_add_projector(self, mocked_exec): """ Test projector edit form with no parameters creates a new entry. :return: None """ # GIVEN: Mocked setup # WHEN: Calling edit form with no parameters self.projector_form.exec() item = self.projector_form.projector # THEN: Should be creating a new instance self.assertTrue(self.projector_form.new_projector, 'Projector edit form should be marked as a new entry') self.assertTrue((item.ip is None and item.name is None), 'Projector edit form should have a new Projector() instance to edit') @patch('openlp.core.ui.projector.editform.QtWidgets.QDialog.exec') def test_edit_form_edit_projector(self, mocked_exec): """ Test projector edit form with existing projector entry :return: """ # GIVEN: Mocked setup # WHEN: Calling edit form with existing projector instance self.projector_form.exec(projector=Projector(**TEST1_DATA)) item = self.projector_form.projector # THEN: Should be editing an existing entry self.assertFalse(self.projector_form.new_projector, 'Projector edit form should be marked as existing entry') self.assertTrue((item.ip is TEST1_DATA['ip'] and item.name is TEST1_DATA['name']), 'Projector edit form should have TEST1_DATA() instance to edit')
class TestProjectorEditForm(TestCase, TestMixin): """ Test the methods in the ProjectorEditForm class """ def setUp(self): """ Create the UI and setup necessary options :return: None """ self.build_settings() self.setup_application() Registry.create() with patch('openlp.core.lib.projector.db.init_url') as mocked_init_url: mocked_init_url.return_value = 'sqlite://' self.projectordb = ProjectorDB() self.projector_form = ProjectorEditForm( projectordb=self.projectordb) def tearDown(self): """ Close database session. Delete all C++ objects at end so we don't segfault. :return: None """ self.projectordb.session.close() del (self.projector_form) self.destroy_settings() def edit_form_add_projector_test(self): """ Test projector edit form with no parameters creates a new entry. :return: None """ # GIVEN: Mocked setup with patch('openlp.core.ui.projector.editform.QDialog.exec_'): # WHEN: Calling edit form with no parameters self.projector_form.exec_() item = self.projector_form.projector # THEN: Should be creating a new instance self.assertTrue( self.projector_form.new_projector, 'Projector edit form should be marked as a new entry') self.assertTrue(( item.ip is None and item.name is None ), 'Projector edit form should have a new Projector() instance to edit' ) def edit_form_edit_projector_test(self): """ Test projector edit form with existing projector entry :return: """ # GIVEN: Mocked setup with patch('openlp.core.ui.projector.editform.QDialog.exec_'): # WHEN: Calling edit form with existing projector instance self.projector_form.exec_(projector=TEST1_DATA) item = self.projector_form.projector # THEN: Should be editing an existing entry self.assertFalse( self.projector_form.new_projector, 'Projector edit form should be marked as existing entry') self.assertTrue( (item.ip is TEST1_DATA.ip and item.name is TEST1_DATA.name), 'Projector edit form should have TEST1_DATA() instance to edit' )
class TestProjectorEditForm(TestCase, TestMixin): """ Test the methods in the ProjectorEditForm class """ def setUp(self): """ Create the UI and setup necessary options :return: None """ self.build_settings() self.setup_application() Registry.create() with patch("openlp.core.lib.projector.db.init_url") as mocked_init_url: mocked_init_url.return_value = "sqlite://" self.projectordb = ProjectorDB() self.projector_form = ProjectorEditForm(projectordb=self.projectordb) def tearDown(self): """ Close database session. Delete all C++ objects at end so we don't segfault. :return: None """ self.projectordb.session.close() del (self.projector_form) self.destroy_settings() def edit_form_add_projector_test(self): """ Test projector edit form with no parameters creates a new entry. :return: None """ # GIVEN: Mocked setup with patch("openlp.core.ui.projector.editform.QDialog.exec_"): # WHEN: Calling edit form with no parameters self.projector_form.exec_() item = self.projector_form.projector # THEN: Should be creating a new instance self.assertTrue(self.projector_form.new_projector, "Projector edit form should be marked as a new entry") self.assertTrue( (item.ip is None and item.name is None), "Projector edit form should have a new Projector() instance to edit", ) def edit_form_edit_projector_test(self): """ Test projector edit form with existing projector entry :return: """ # GIVEN: Mocked setup with patch("openlp.core.ui.projector.editform.QDialog.exec_"): # WHEN: Calling edit form with existing projector instance self.projector_form.exec_(projector=TEST1_DATA) item = self.projector_form.projector # THEN: Should be editing an existing entry self.assertFalse( self.projector_form.new_projector, "Projector edit form should be marked as existing entry" ) self.assertTrue( (item.ip is TEST1_DATA.ip and item.name is TEST1_DATA.name), "Projector edit form should have TEST1_DATA() instance to edit", )