From bc5334fa1ac9885480c62936bf4624518180daf8 Mon Sep 17 00:00:00 2001 From: Tim Bentley Date: Wed, 13 Feb 2013 19:10:41 +0000 Subject: [PATCH 1/7] Add new tests to system --- tests/functional/openlp_core_lib/__init__.py | 8 +++ .../openlp_core_lib/test_image_manager.py | 49 +++++++++++++++++++ tests/interfaces/openlp_core_ui/__init__.py | 8 +++ .../openlp_core_ui/test_servicemanager.py | 41 ++++++++++++++++ 4 files changed, 106 insertions(+) create mode 100644 tests/functional/openlp_core_lib/test_image_manager.py create mode 100644 tests/interfaces/openlp_core_ui/test_servicemanager.py diff --git a/tests/functional/openlp_core_lib/__init__.py b/tests/functional/openlp_core_lib/__init__.py index e69de29bb..e0da50eb3 100644 --- a/tests/functional/openlp_core_lib/__init__.py +++ b/tests/functional/openlp_core_lib/__init__.py @@ -0,0 +1,8 @@ +import sip +sip.setapi(u'QDate', 2) +sip.setapi(u'QDateTime', 2) +sip.setapi(u'QString', 2) +sip.setapi(u'QTextStream', 2) +sip.setapi(u'QTime', 2) +sip.setapi(u'QUrl', 2) +sip.setapi(u'QVariant', 2) \ No newline at end of file diff --git a/tests/functional/openlp_core_lib/test_image_manager.py b/tests/functional/openlp_core_lib/test_image_manager.py new file mode 100644 index 000000000..2ab0ff1ce --- /dev/null +++ b/tests/functional/openlp_core_lib/test_image_manager.py @@ -0,0 +1,49 @@ +""" + Package to test the openlp.core.ui package. +""" + +import os + +from unittest import TestCase + +from mock import MagicMock +from openlp.core.lib import Registry, ImageManager, ScreenList +from PyQt4 import QtCore, QtGui, QtTest + +TEST_PATH = os.path.abspath(os.path.join(os.path.dirname(__file__), u'..', u'..', u'resources')) + +class TestImageManager(TestCase): + + def setUp(self): + """ + Create the UI + """ + Registry.create() + self.app = QtGui.QApplication([]) + ScreenList.create(self.app.desktop()) + self.image_manager = ImageManager() + + def tearDown(self): + """ + Delete all the C++ objects at the end so that we don't have a segfault + """ + del self.app + + def basic_image_manager_test(self): + """ + Test the Image Manager setup basic functionality + """ + # GIVEN: the an image add to the image manager + self.image_manager.add_image(TEST_PATH, u'church.jpg', None) + + # WHEN the image is retrieved + image = self.image_manager.get_image(TEST_PATH, u'church.jpg') + + # THEN returned record is a type of image + self.assertEqual(isinstance(image, QtGui.QImage), True, u'The returned field is an image') + + # WHEN the image is retrieved has not been loaded + # THEN a KeyError is thrown + with self.assertRaises(KeyError) as context: + self.image_manager.get_image(TEST_PATH, u'church1.jpg') + self.assertNotEquals(context.exception[0], u'', u'KeyError exception should have been thrown for missing image') \ No newline at end of file diff --git a/tests/interfaces/openlp_core_ui/__init__.py b/tests/interfaces/openlp_core_ui/__init__.py index e69de29bb..e0da50eb3 100644 --- a/tests/interfaces/openlp_core_ui/__init__.py +++ b/tests/interfaces/openlp_core_ui/__init__.py @@ -0,0 +1,8 @@ +import sip +sip.setapi(u'QDate', 2) +sip.setapi(u'QDateTime', 2) +sip.setapi(u'QString', 2) +sip.setapi(u'QTextStream', 2) +sip.setapi(u'QTime', 2) +sip.setapi(u'QUrl', 2) +sip.setapi(u'QVariant', 2) \ No newline at end of file diff --git a/tests/interfaces/openlp_core_ui/test_servicemanager.py b/tests/interfaces/openlp_core_ui/test_servicemanager.py new file mode 100644 index 000000000..7883a5694 --- /dev/null +++ b/tests/interfaces/openlp_core_ui/test_servicemanager.py @@ -0,0 +1,41 @@ +""" + Package to test the openlp.core.ui package. +""" +from unittest import TestCase + +from mock import MagicMock +from openlp.core.lib import Registry, ScreenList +from openlp.core.ui.mainwindow import MainWindow +from PyQt4 import QtGui + + +class TestStartNoteDialog(TestCase): + + def setUp(self): + """ + Create the UI + """ + Registry.create() + self.app = QtGui.QApplication([]) + ScreenList.create(self.app.desktop()) + Registry().register(u'application', MagicMock()) + self.main_window = MainWindow() + self.service_manager = Registry().get(u'service_manager') + + def tearDown(self): + """ + Delete all the C++ objects at the end so that we don't have a segfault + """ + del self.main_window + del self.app + + def basic_service_manager_test(self): + """ + Test the Service Manager display functionality + """ + # GIVEN: A New Service Manager instance + + # WHEN I have an empty display + # THEN the count of items should be zero + self.assertEqual(self.service_manager.service_manager_list.topLevelItemCount(), 0, + u'There the service manager list is empty ') From 89856e0e9aa660b6300fd88fa7622dc93f976890 Mon Sep 17 00:00:00 2001 From: Tim Bentley Date: Wed, 13 Feb 2013 19:22:43 +0000 Subject: [PATCH 2/7] Cleanup --- tests/functional/openlp_core_lib/test_image_manager.py | 6 +++--- tests/interfaces/openlp_core_ui/__init__.py | 2 +- tests/interfaces/openlp_core_ui/test_servicemanager.py | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/tests/functional/openlp_core_lib/test_image_manager.py b/tests/functional/openlp_core_lib/test_image_manager.py index 2ab0ff1ce..3ee4abd90 100644 --- a/tests/functional/openlp_core_lib/test_image_manager.py +++ b/tests/functional/openlp_core_lib/test_image_manager.py @@ -6,12 +6,12 @@ import os from unittest import TestCase -from mock import MagicMock from openlp.core.lib import Registry, ImageManager, ScreenList -from PyQt4 import QtCore, QtGui, QtTest +from PyQt4 import QtGui TEST_PATH = os.path.abspath(os.path.join(os.path.dirname(__file__), u'..', u'..', u'resources')) + class TestImageManager(TestCase): def setUp(self): @@ -46,4 +46,4 @@ class TestImageManager(TestCase): # THEN a KeyError is thrown with self.assertRaises(KeyError) as context: self.image_manager.get_image(TEST_PATH, u'church1.jpg') - self.assertNotEquals(context.exception[0], u'', u'KeyError exception should have been thrown for missing image') \ No newline at end of file + self.assertNotEquals(context.exception[0], u'', u'KeyError exception should have been thrown for missing image') diff --git a/tests/interfaces/openlp_core_ui/__init__.py b/tests/interfaces/openlp_core_ui/__init__.py index e0da50eb3..0157fb2f0 100644 --- a/tests/interfaces/openlp_core_ui/__init__.py +++ b/tests/interfaces/openlp_core_ui/__init__.py @@ -5,4 +5,4 @@ sip.setapi(u'QString', 2) sip.setapi(u'QTextStream', 2) sip.setapi(u'QTime', 2) sip.setapi(u'QUrl', 2) -sip.setapi(u'QVariant', 2) \ No newline at end of file +sip.setapi(u'QVariant', 2) diff --git a/tests/interfaces/openlp_core_ui/test_servicemanager.py b/tests/interfaces/openlp_core_ui/test_servicemanager.py index 7883a5694..b894db470 100644 --- a/tests/interfaces/openlp_core_ui/test_servicemanager.py +++ b/tests/interfaces/openlp_core_ui/test_servicemanager.py @@ -1,5 +1,5 @@ """ - Package to test the openlp.core.ui package. + Package to test the openlp.core.lib package. """ from unittest import TestCase @@ -38,4 +38,4 @@ class TestStartNoteDialog(TestCase): # WHEN I have an empty display # THEN the count of items should be zero self.assertEqual(self.service_manager.service_manager_list.topLevelItemCount(), 0, - u'There the service manager list is empty ') + u'There the service manager list is not empty ') From a5b6b5fe90fc408514afc633977c07d82577193f Mon Sep 17 00:00:00 2001 From: Tim Bentley Date: Thu, 14 Feb 2013 17:30:28 +0000 Subject: [PATCH 3/7] Fix init methods --- tests/functional/__init__.py | 8 ++++++++ tests/functional/openlp_core_lib/__init__.py | 8 -------- tests/interfaces/__init__.py | 8 ++++++++ 3 files changed, 16 insertions(+), 8 deletions(-) create mode 100644 tests/functional/__init__.py create mode 100644 tests/interfaces/__init__.py diff --git a/tests/functional/__init__.py b/tests/functional/__init__.py new file mode 100644 index 000000000..e0da50eb3 --- /dev/null +++ b/tests/functional/__init__.py @@ -0,0 +1,8 @@ +import sip +sip.setapi(u'QDate', 2) +sip.setapi(u'QDateTime', 2) +sip.setapi(u'QString', 2) +sip.setapi(u'QTextStream', 2) +sip.setapi(u'QTime', 2) +sip.setapi(u'QUrl', 2) +sip.setapi(u'QVariant', 2) \ No newline at end of file diff --git a/tests/functional/openlp_core_lib/__init__.py b/tests/functional/openlp_core_lib/__init__.py index e0da50eb3..e69de29bb 100644 --- a/tests/functional/openlp_core_lib/__init__.py +++ b/tests/functional/openlp_core_lib/__init__.py @@ -1,8 +0,0 @@ -import sip -sip.setapi(u'QDate', 2) -sip.setapi(u'QDateTime', 2) -sip.setapi(u'QString', 2) -sip.setapi(u'QTextStream', 2) -sip.setapi(u'QTime', 2) -sip.setapi(u'QUrl', 2) -sip.setapi(u'QVariant', 2) \ No newline at end of file diff --git a/tests/interfaces/__init__.py b/tests/interfaces/__init__.py new file mode 100644 index 000000000..e0da50eb3 --- /dev/null +++ b/tests/interfaces/__init__.py @@ -0,0 +1,8 @@ +import sip +sip.setapi(u'QDate', 2) +sip.setapi(u'QDateTime', 2) +sip.setapi(u'QString', 2) +sip.setapi(u'QTextStream', 2) +sip.setapi(u'QTime', 2) +sip.setapi(u'QUrl', 2) +sip.setapi(u'QVariant', 2) \ No newline at end of file From 796a147ffe4dbb7601b9a152b055be32794d6bc8 Mon Sep 17 00:00:00 2001 From: Tim Bentley Date: Thu, 14 Feb 2013 17:34:41 +0000 Subject: [PATCH 4/7] Remove one extra file --- tests/interfaces/openlp_core_ui/__init__.py | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/tests/interfaces/openlp_core_ui/__init__.py b/tests/interfaces/openlp_core_ui/__init__.py index 0157fb2f0..8b1378917 100644 --- a/tests/interfaces/openlp_core_ui/__init__.py +++ b/tests/interfaces/openlp_core_ui/__init__.py @@ -1,8 +1 @@ -import sip -sip.setapi(u'QDate', 2) -sip.setapi(u'QDateTime', 2) -sip.setapi(u'QString', 2) -sip.setapi(u'QTextStream', 2) -sip.setapi(u'QTime', 2) -sip.setapi(u'QUrl', 2) -sip.setapi(u'QVariant', 2) + From 11dea519d2db5b726c9ccf92e764153c259af166 Mon Sep 17 00:00:00 2001 From: Tim Bentley Date: Sat, 16 Feb 2013 06:51:25 +0000 Subject: [PATCH 5/7] Fix import order --- tests/functional/openlp_core_lib/test_image_manager.py | 5 +++-- tests/functional/openlp_core_lib/test_registry.py | 3 ++- tests/functional/openlp_core_lib/test_serviceitem.py | 3 +-- tests/interfaces/openlp_core_ui/test_servicemanager.py | 6 ++++-- tests/interfaces/openlp_core_ui/test_servicenotedialog.py | 6 ++++-- tests/interfaces/openlp_core_ui/test_starttimedialog.py | 6 ++++-- 6 files changed, 18 insertions(+), 11 deletions(-) diff --git a/tests/functional/openlp_core_lib/test_image_manager.py b/tests/functional/openlp_core_lib/test_image_manager.py index 3ee4abd90..a8fcdfa59 100644 --- a/tests/functional/openlp_core_lib/test_image_manager.py +++ b/tests/functional/openlp_core_lib/test_image_manager.py @@ -3,12 +3,13 @@ """ import os - from unittest import TestCase -from openlp.core.lib import Registry, ImageManager, ScreenList from PyQt4 import QtGui +from openlp.core.lib import Registry, ImageManager, ScreenList + + TEST_PATH = os.path.abspath(os.path.join(os.path.dirname(__file__), u'..', u'..', u'resources')) diff --git a/tests/functional/openlp_core_lib/test_registry.py b/tests/functional/openlp_core_lib/test_registry.py index a2fe60627..7bb7c84cf 100644 --- a/tests/functional/openlp_core_lib/test_registry.py +++ b/tests/functional/openlp_core_lib/test_registry.py @@ -2,13 +2,14 @@ Package to test the openlp.core.lib package. """ import os - from unittest import TestCase from mock import MagicMock + from openlp.core.lib import Registry TESTPATH = os.path.abspath(os.path.join(os.path.dirname(__file__), u'..', u'..', u'resources')) + class TestRegistry(TestCase): def registry_service_test(self): diff --git a/tests/functional/openlp_core_lib/test_serviceitem.py b/tests/functional/openlp_core_lib/test_serviceitem.py index a50752cce..05952471d 100644 --- a/tests/functional/openlp_core_lib/test_serviceitem.py +++ b/tests/functional/openlp_core_lib/test_serviceitem.py @@ -3,10 +3,9 @@ """ import os import cPickle - from unittest import TestCase - from mock import MagicMock + from openlp.core.lib import ServiceItem, Registry diff --git a/tests/interfaces/openlp_core_ui/test_servicemanager.py b/tests/interfaces/openlp_core_ui/test_servicemanager.py index b894db470..8ecf3271d 100644 --- a/tests/interfaces/openlp_core_ui/test_servicemanager.py +++ b/tests/interfaces/openlp_core_ui/test_servicemanager.py @@ -1,12 +1,14 @@ """ Package to test the openlp.core.lib package. """ -from unittest import TestCase +from unittest import TestCase from mock import MagicMock + +from PyQt4 import QtGui + from openlp.core.lib import Registry, ScreenList from openlp.core.ui.mainwindow import MainWindow -from PyQt4 import QtGui class TestStartNoteDialog(TestCase): diff --git a/tests/interfaces/openlp_core_ui/test_servicenotedialog.py b/tests/interfaces/openlp_core_ui/test_servicenotedialog.py index f3694fdea..1cf3fef38 100644 --- a/tests/interfaces/openlp_core_ui/test_servicenotedialog.py +++ b/tests/interfaces/openlp_core_ui/test_servicenotedialog.py @@ -2,11 +2,13 @@ Package to test the openlp.core.ui package. """ from unittest import TestCase - from mock import patch + +from PyQt4 import QtCore, QtGui, QtTest + from openlp.core.lib import Registry from openlp.core.ui import servicenoteform -from PyQt4 import QtCore, QtGui, QtTest + class TestStartNoteDialog(TestCase): diff --git a/tests/interfaces/openlp_core_ui/test_starttimedialog.py b/tests/interfaces/openlp_core_ui/test_starttimedialog.py index a9b33a30c..888402235 100644 --- a/tests/interfaces/openlp_core_ui/test_starttimedialog.py +++ b/tests/interfaces/openlp_core_ui/test_starttimedialog.py @@ -2,11 +2,13 @@ Package to test the openlp.core.ui package. """ from unittest import TestCase - from mock import MagicMock, patch + +from PyQt4 import QtCore, QtGui, QtTest + from openlp.core.lib import Registry from openlp.core.ui import starttimeform -from PyQt4 import QtCore, QtGui, QtTest + class TestStartTimeDialog(TestCase): From 8ad83b52ba747de808440af5bf8a089e0958d39d Mon Sep 17 00:00:00 2001 From: Tim Bentley Date: Sat, 16 Feb 2013 10:15:49 +0000 Subject: [PATCH 6/7] Text fix --- tests/functional/openlp_core_lib/test_image_manager.py | 2 +- tests/interfaces/openlp_core_ui/test_servicemanager.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/functional/openlp_core_lib/test_image_manager.py b/tests/functional/openlp_core_lib/test_image_manager.py index a8fcdfa59..d13c82c04 100644 --- a/tests/functional/openlp_core_lib/test_image_manager.py +++ b/tests/functional/openlp_core_lib/test_image_manager.py @@ -41,7 +41,7 @@ class TestImageManager(TestCase): image = self.image_manager.get_image(TEST_PATH, u'church.jpg') # THEN returned record is a type of image - self.assertEqual(isinstance(image, QtGui.QImage), True, u'The returned field is an image') + self.assertEqual(isinstance(image, QtGui.QImage), True, u'The returned object should be a QImage') # WHEN the image is retrieved has not been loaded # THEN a KeyError is thrown diff --git a/tests/interfaces/openlp_core_ui/test_servicemanager.py b/tests/interfaces/openlp_core_ui/test_servicemanager.py index 8ecf3271d..778387ab1 100644 --- a/tests/interfaces/openlp_core_ui/test_servicemanager.py +++ b/tests/interfaces/openlp_core_ui/test_servicemanager.py @@ -40,4 +40,4 @@ class TestStartNoteDialog(TestCase): # WHEN I have an empty display # THEN the count of items should be zero self.assertEqual(self.service_manager.service_manager_list.topLevelItemCount(), 0, - u'There the service manager list is not empty ') + u'The service manager list is not empty ') From 454f42884507adfe01606f0de4fde2a38e867c64 Mon Sep 17 00:00:00 2001 From: Tim Bentley Date: Sat, 16 Feb 2013 10:17:48 +0000 Subject: [PATCH 7/7] Text fix --- tests/interfaces/openlp_core_ui/test_servicemanager.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/interfaces/openlp_core_ui/test_servicemanager.py b/tests/interfaces/openlp_core_ui/test_servicemanager.py index 778387ab1..bb62bd6e6 100644 --- a/tests/interfaces/openlp_core_ui/test_servicemanager.py +++ b/tests/interfaces/openlp_core_ui/test_servicemanager.py @@ -40,4 +40,4 @@ class TestStartNoteDialog(TestCase): # WHEN I have an empty display # THEN the count of items should be zero self.assertEqual(self.service_manager.service_manager_list.topLevelItemCount(), 0, - u'The service manager list is not empty ') + u'The service manager list should be empty ')