Added test, fixed comment.

This commit is contained in:
suutari-olli 2016-02-26 23:28:01 +02:00
parent dee737e3fb
commit 6ef2cc8b59
2 changed files with 32 additions and 2 deletions

View File

@ -601,11 +601,13 @@ class SlideController(DisplayController, RegistryProperties):
def __add_actions_to_widget(self, widget): def __add_actions_to_widget(self, widget):
""" """
Add actions to the widget specified by `widget` Add actions to the widget specified by `widget`
:param widget: The UI widget for the actions
This defines the controls available when Live display has stolen focus. This defines the controls available when Live display has stolen focus.
Examples of this happening: Clicking anything in the live window or certain single screen mode scenarios. Examples of this happening: Clicking anything in the live window or certain single screen mode scenarios.
Needles to say, blank to modes should not be removed from here. Needles to say, blank to modes should not be removed from here.
For some reason this required a test. It may be found in test_slidecontroller.py as
"live_stolen_focus_shortcuts_test. If you want to modify things here, you must also modify them there. (Duh)
:param widget: The UI widget for the actions
""" """
widget.addActions([ widget.addActions([
self.previous_item, self.next_item, self.previous_item, self.next_item,
@ -983,6 +985,7 @@ class SlideController(DisplayController, RegistryProperties):
self.update_preview() self.update_preview()
self.on_toggle_loop() self.on_toggle_loop()
def on_theme_display(self, checked=None): def on_theme_display(self, checked=None):
""" """
Handle the Theme screen button Handle the Theme screen button

View File

@ -685,6 +685,33 @@ class TestSlideController(TestCase):
self.assertEqual('mocked_presentation_item_stop', mocked_execute.call_args_list[1][0][0], self.assertEqual('mocked_presentation_item_stop', mocked_execute.call_args_list[1][0][0],
'The presentation should have been stopped.') 'The presentation should have been stopped.')
def live_stolen_focus_shortcuts_test(self):
"""
Test that all the needed shortcuts are available in scenarios where Live has stolen focus.
These are found under def __add_actions_to_widget(self, widget): in slidecontroller.py
"""
# GIVEN: A slide controller, actions needed
slide_controller = SlideController(None)
mocked_widget = MagicMock()
slide_controller.previous_item = MagicMock()
slide_controller.next_item = MagicMock()
slide_controller.previous_service = MagicMock()
slide_controller.next_service = MagicMock()
slide_controller.escape_item = MagicMock()
slide_controller.desktop_screen = MagicMock()
slide_controller.blank_screen = MagicMock()
slide_controller.theme_screen = MagicMock()
# WHEN: __add_actions_to_widget is called
slide_controller._SlideController__add_actions_to_widget(mocked_widget)
# THEN: The call to addActions should be correct
mocked_widget.addActions.assert_called_with([
slide_controller.previous_item, slide_controller.next_item,
slide_controller.previous_service, slide_controller.next_service,
slide_controller.escape_item, slide_controller.desktop_screen,
slide_controller.theme_screen, slide_controller.blank_screen
])
class TestInfoLabel(TestCase): class TestInfoLabel(TestCase):