forked from openlp/openlp
With tests
This commit is contained in:
parent
0809c8e192
commit
9f8b236f90
@ -100,7 +100,6 @@ class SettingsForm(QtGui.QDialog, Ui_SettingsDialog):
|
|||||||
self.stacked_layout.widget(tabIndex).save()
|
self.stacked_layout.widget(tabIndex).save()
|
||||||
# if the display of image background are changing we need to regenerate the image cache
|
# if the display of image background are changing we need to regenerate the image cache
|
||||||
if u'images_config_updated' in self.processes or u'config_screen_changed' in self.processes:
|
if u'images_config_updated' in self.processes or u'config_screen_changed' in self.processes:
|
||||||
print "found"
|
|
||||||
self.register_post_process(u'images_regenerate')
|
self.register_post_process(u'images_regenerate')
|
||||||
# Now lets process all the post save handlers
|
# Now lets process all the post save handlers
|
||||||
while self.processes:
|
while self.processes:
|
||||||
|
@ -108,3 +108,50 @@ class TestSettingsForm(TestCase):
|
|||||||
# WHEN testing the processing stack
|
# WHEN testing the processing stack
|
||||||
# THEN the processing stack should still have two items
|
# THEN the processing stack should still have two items
|
||||||
assert len(self.form.processes) == 2, u'No new processes should have been added to the stack'
|
assert len(self.form.processes) == 2, u'No new processes should have been added to the stack'
|
||||||
|
|
||||||
|
def register_multiple_functions_test(self):
|
||||||
|
"""
|
||||||
|
Test running the settings form and adding multiple functions
|
||||||
|
"""
|
||||||
|
# GIVEN: Three functions registered to be call
|
||||||
|
dummy1 = MagicMock()
|
||||||
|
dummy2 = MagicMock()
|
||||||
|
dummy3 = MagicMock()
|
||||||
|
|
||||||
|
Registry().register_function(u'images_config_updated', dummy1)
|
||||||
|
Registry().register_function(u'config_screen_changed', dummy2)
|
||||||
|
Registry().register_function(u'images_regenerate', dummy3)
|
||||||
|
|
||||||
|
# WHEN: The Images have been changed and the form sumbitted
|
||||||
|
self.form.register_post_process(u'images_config_updated')
|
||||||
|
self.form.accept()
|
||||||
|
|
||||||
|
# THEN Images_regenerate should have been called.
|
||||||
|
assert dummy1.call_count == 1, u'dummy1 should have been called once'
|
||||||
|
assert dummy2.call_count == 0, u'dummy2 should not have been called once'
|
||||||
|
assert dummy3.call_count == 1, u'dummy3 should have been called once'
|
||||||
|
|
||||||
|
# WHEN: The Images have been changed and the form submitted
|
||||||
|
dummy1.reset_mock()
|
||||||
|
dummy2.reset_mock()
|
||||||
|
dummy3.reset_mock()
|
||||||
|
self.form.register_post_process(u'config_screen_changed')
|
||||||
|
self.form.accept()
|
||||||
|
|
||||||
|
# THEN Images_regenerate should have been called.
|
||||||
|
assert dummy1.call_count == 0, u'dummy1 should not have been called once'
|
||||||
|
assert dummy2.call_count == 1, u'dummy2 should have been called once'
|
||||||
|
assert dummy3.call_count == 1, u'dummy3 should have been called once'
|
||||||
|
|
||||||
|
# WHEN: The Images have been changed and the form submitted
|
||||||
|
dummy1.reset_mock()
|
||||||
|
dummy2.reset_mock()
|
||||||
|
dummy3.reset_mock()
|
||||||
|
self.form.register_post_process(u'config_screen_changed')
|
||||||
|
self.form.register_post_process(u'images_config_updated')
|
||||||
|
self.form.accept()
|
||||||
|
|
||||||
|
# THEN Images_regenerate should have been called.
|
||||||
|
assert dummy1.call_count == 1, u'dummy1 should have been called once'
|
||||||
|
assert dummy2.call_count == 1, u'dummy2 should have been called once'
|
||||||
|
assert dummy3.call_count == 1, u'dummy3 should have been called once'
|
Loading…
Reference in New Issue
Block a user