- fixed auto preview of next service item

- added test

bzr-revno: 2225
This commit is contained in:
Andreas Preikschat 2013-03-31 19:13:56 +02:00
commit 29d7b3411e
4 changed files with 70 additions and 3 deletions

View File

@ -1375,7 +1375,7 @@ class ServiceManager(QtGui.QWidget, ServiceManagerDialog):
self.preview_controller.addServiceManagerItem(self.service_items[item][u'service_item'], 0) self.preview_controller.addServiceManagerItem(self.service_items[item][u'service_item'], 0)
next_item = self.service_manager_list.topLevelItem(item) next_item = self.service_manager_list.topLevelItem(item)
self.service_manager_list.setCurrentItem(next_item) self.service_manager_list.setCurrentItem(next_item)
self.live_controller.previewListWidget.setFocus() self.live_controller.preview_list_widget.setFocus()
else: else:
critical_error_message_box(translate('OpenLP.ServiceManager', 'Missing Display Handler'), critical_error_message_box(translate('OpenLP.ServiceManager', 'Missing Display Handler'),
translate('OpenLP.ServiceManager', translate('OpenLP.ServiceManager',

View File

@ -1,5 +1,5 @@
""" """
Module to test the custom edit form. Module to test the EditCustomForm.
""" """
from unittest import TestCase from unittest import TestCase
from mock import MagicMock, patch from mock import MagicMock, patch
@ -12,7 +12,7 @@ from openlp.plugins.custom.lib.mediaitem import CustomMediaItem
from openlp.plugins.custom.forms.editcustomform import EditCustomForm from openlp.plugins.custom.forms.editcustomform import EditCustomForm
class TestCustomFrom(TestCase): class TestEditCustomForm(TestCase):
""" """
Test the EditCustomForm. Test the EditCustomForm.
""" """

View File

@ -0,0 +1,67 @@
"""
Module to test the EditCustomSlideForm.
"""
from unittest import TestCase
from mock import MagicMock, patch
from PyQt4 import QtGui
from openlp.core.lib import Registry
from openlp.plugins.custom.forms.editcustomslideform import EditCustomSlideForm
class TestEditCustomSlideForm(TestCase):
"""
Test the EditCustomSlideForm.
"""
def setUp(self):
"""
Create the UI
"""
Registry.create()
self.app = QtGui.QApplication([])
self.main_window = QtGui.QMainWindow()
Registry().register(u'main_window', self.main_window)
self.form = EditCustomSlideForm()
def tearDown(self):
"""
Delete all the C++ objects at the end so that we don't have a segfault
"""
del self.form
del self.main_window
del self.app
def basic_test(self):
"""
Test if the dialog is correctly set up.
"""
# GIVEN: A mocked QDialog.exec_() method
with patch(u'PyQt4.QtGui.QDialog.exec_') as mocked_exec:
# WHEN: Show the dialog.
self.form.exec_()
# THEN: The dialog should be empty.
assert self.form.slide_text_edit.toPlainText() == u'', u'There should not be any text in the text editor.'
def set_text_test(self):
"""
Test the set_text() method.
"""
# GIVEN: A mocked QDialog.exec_() method
with patch(u'PyQt4.QtGui.QDialog.exec_') as mocked_exec:
mocked_set_focus = MagicMock()
self.form.slide_text_edit.setFocus = mocked_set_focus
wanted_text = u'THIS TEXT SHOULD BE SHOWN.'
# WHEN: Show the dialog and set the text.
self.form.exec_()
self.form.set_text(wanted_text)
# THEN: The dialog should show the text.
assert self.form.slide_text_edit.toPlainText() == wanted_text, \
u'The text editor should show the correct text.'
# THEN: The dialog should have focus.
mocked_set_focus.assert_called_with()