openlp-core team mailing list archive
-
openlp-core team
-
Mailing list archive
-
Message #24888
Re: [Merge] lp:~alisonken1/openlp/bug-1386913 into lp:openlp
Review: Needs Fixing
Diff comments:
> === modified file 'openlp/core/ui/projector/sourceselectform.py'
> --- openlp/core/ui/projector/sourceselectform.py 2014-10-23 21:00:06 +0000
> +++ openlp/core/ui/projector/sourceselectform.py 2014-11-07 22:50:20 +0000
> @@ -152,16 +152,15 @@
> """
> for button in bar.buttons():
> if bar.standardButton(button) == QDialogButtonBox.Cancel:
> - tip = "Ignoring current changes and return to OpenLP"
> + button.setToolTip("Ignoring current changes and return to OpenLP")
This should be run through the translate() function.
> elif bar.standardButton(button) == QDialogButtonBox.Reset:
> - tip = "Delete all user-defined text and revert to PJLink default text"
> + button.setToolTip("Delete all user-defined text and revert to PJLink default text")
This should be run through the translate() function.
> elif bar.standardButton(button) == QDialogButtonBox.Discard:
> - tip = "Discard changes and reset to previous user-defined text"
> + button.setToolTip("Discard changes and reset to previous user-defined text")
This should be run through the translate() function.
> elif bar.standardButton(button) == QDialogButtonBox.Ok:
> - tip = "Save changes and return to OpenLP"
> + button.setToolTip("Save changes and return to OpenLP")
This should be run through the translate() function.
> else:
> - tip = ""
> - button.setToolTip(tip)
> + log.debug('No tooltip for button {}'.format(button.text()))
>
>
> class FingerTabBarWidget(QTabBar):
> @@ -286,6 +285,10 @@
> thistab = self.tabwidget.addTab(tab, PJLINK_DEFAULT_SOURCES[key])
> if buttonchecked:
> self.tabwidget.setCurrentIndex(thistab)
> + self.button_box = QDialogButtonBox(QtGui.QDialogButtonBox.Reset |
> + QtGui.QDialogButtonBox.Discard |
> + QtGui.QDialogButtonBox.Ok |
> + QtGui.QDialogButtonBox.Cancel)
> else:
> for key in keys:
> (tab, button_count, buttonchecked) = Build_Tab(group=self.button_group,
> @@ -297,10 +300,8 @@
> thistab = self.tabwidget.addTab(tab, PJLINK_DEFAULT_SOURCES[key])
> if buttonchecked:
> self.tabwidget.setCurrentIndex(thistab)
> - self.button_box = QDialogButtonBox(QtGui.QDialogButtonBox.Reset |
> - QtGui.QDialogButtonBox.Discard |
> - QtGui.QDialogButtonBox.Ok |
> - QtGui.QDialogButtonBox.Cancel)
> + self.button_box = QDialogButtonBox(QtGui.QDialogButtonBox.Ok |
> + QtGui.QDialogButtonBox.Cancel)
> self.button_box.clicked.connect(self.button_clicked)
> self.layout.addWidget(self.button_box)
> set_button_tooltip(self.button_box)
> @@ -321,9 +322,9 @@
> if self.button_box.standardButton(button) == self.button_box.Cancel:
> self.done(0)
> elif self.button_box.standardButton(button) == self.button_box.Reset:
> + self.done(100)
> + elif self.button_box.standardButton(button) == self.button_box.Discard:
> self.delete_sources()
> - elif self.button_box.standardButton(button) == self.button_box.Discard:
> - self.done(100)
> elif self.button_box.standardButton(button) == self.button_box.Ok:
> return self.accept_me()
> else:
> @@ -418,6 +419,10 @@
> item.setText(source_item.text)
> self.layout.addRow(PJLINK_DEFAULT_CODES[key], item)
> self.button_group.append(item)
> + self.button_box = QDialogButtonBox(QtGui.QDialogButtonBox.Reset |
> + QtGui.QDialogButtonBox.Discard |
> + QtGui.QDialogButtonBox.Ok |
> + QtGui.QDialogButtonBox.Cancel)
> else:
> for key in keys:
> source_text = self.projectordb.get_source_by_code(code=key, projector_id=self.projector.db_item.id)
> @@ -427,10 +432,8 @@
> self.layout.addWidget(button)
> self.button_group.addButton(button, int(key))
> button_list.append(key)
> - self.button_box = QDialogButtonBox(QtGui.QDialogButtonBox.Reset |
> - QtGui.QDialogButtonBox.Discard |
> - QtGui.QDialogButtonBox.Ok |
> - QtGui.QDialogButtonBox.Cancel)
> + self.button_box = QDialogButtonBox(QtGui.QDialogButtonBox.Ok |
> + QtGui.QDialogButtonBox.Cancel)
> self.button_box.clicked.connect(self.button_clicked)
> self.layout.addWidget(self.button_box)
> self.setMinimumHeight(key_count*25)
> @@ -452,9 +455,9 @@
> if self.button_box.standardButton(button) == self.button_box.Cancel:
> self.done(0)
> elif self.button_box.standardButton(button) == self.button_box.Reset:
> + self.done(100)
> + elif self.button_box.standardButton(button) == self.button_box.Discard:
> self.delete_sources()
> - elif self.button_box.standardButton(button) == self.button_box.Discard:
> - self.done(100)
> elif self.button_box.standardButton(button) == self.button_box.Ok:
> return self.accept_me()
> else:
>
> === added file 'tests/interfaces/openlp_core_ui/test_projectorsourceform.py'
> --- tests/interfaces/openlp_core_ui/test_projectorsourceform.py 1970-01-01 00:00:00 +0000
> +++ tests/interfaces/openlp_core_ui/test_projectorsourceform.py 2014-11-07 22:50:20 +0000
> @@ -0,0 +1,79 @@
> +# -*- coding: utf-8 -*-
> +# vim: autoindent shiftwidth=4 expandtab textwidth=120 tabstop=4 softtabstop=4
> +
> +###############################################################################
> +# OpenLP - Open Source Lyrics Projection #
> +# --------------------------------------------------------------------------- #
> +# Copyright (c) 2008-2014 Raoul Snyman #
> +# Portions copyright (c) 2008-2014 Tim Bentley, Gerald Britton, Jonathan #
> +# Corwin, Samuel Findlay, Michael Gorven, Scott Guerrieri, Matthias Hub, #
> +# Meinert Jordan, Armin Köhler, Erik Lundin, Edwin Lunando, Brian T. Meyer. #
> +# Joshua Miller, Stevan Pettit, Andreas Preikschat, Mattias Põldaru, #
> +# Christian Richter, Philip Ridout, Ken Roberts, Simon Scudder, #
> +# Jeffrey Smith, Maikel Stuivenberg, Martin Thompson, Jon Tibble, #
> +# Dave Warnock, Frode Woldsund, Martin Zibricky, Patrick Zimmermann #
> +# --------------------------------------------------------------------------- #
> +# This program is free software; you can redistribute it and/or modify it #
> +# under the terms of the GNU General Public License as published by the Free #
> +# Software Foundation; version 2 of the License. #
> +# #
> +# This program is distributed in the hope that it will be useful, but WITHOUT #
> +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or #
> +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for #
> +# more details. #
> +# #
> +# You should have received a copy of the GNU General Public License along #
> +# with this program; if not, write to the Free Software Foundation, Inc., 59 #
> +# Temple Place, Suite 330, Boston, MA 02111-1307 USA #
> +###############################################################################
> +"""
> + :mod: `tests.interfaces.openlp_core_ui.test_projectorsourceform` module
> +
> + Tests for the Projector Source Select form.
> +"""
> +import logging
> +log = logging.getLogger(__name__)
> +log.debug('test_projectorsourceform loaded')
> +
> +from unittest import TestCase
> +
> +from tests.helpers.testmixin import TestMixin
> +from openlp.core.lib.projector.constants import PJLINK_DEFAULT_CODES, PJLINK_DEFAULT_SOURCES
> +
> +from openlp.core.ui.projector.sourceselectform import source_group
> +
> +
> +def build_source_dict():
> + """
> + Builds a source dictionary to verify source_group returns a valid dictionary of dictionary items
> +
> + :returns: dictionary of valid PJLink source codes grouped by PJLink source group
> + """
> + test_group = {}
> + for group in PJLINK_DEFAULT_SOURCES.keys():
> + test_group[group] = {}
> + for key in PJLINK_DEFAULT_CODES:
> + test_group[key[0]][key] = PJLINK_DEFAULT_CODES[key]
> + return test_group
> +
> +
> +class ProjectorSourceFormTest(TestCase, TestMixin):
> + """
> + Test class for the Projector Source Select form module
> + """
> + def source_dict_test(self):
> + """
> + Test that source list dict returned from sourceselectform module is a valid dict with proper entries
> + """
> + # GIVEN: A list of inputs
> + codes = []
> + for item in PJLINK_DEFAULT_CODES.keys():
> + codes.append(item)
> + codes.sort()
> +
> + # WHEN: projector.sourceselectform.source_select() is called
> + check = source_group(codes, PJLINK_DEFAULT_CODES)
> +
> + # THEN: return dictionary should match test dictionary
> + self.assertEquals(check, build_source_dict(),
> + "Source group dictionary should match test dictionary")
>
--
https://code.launchpad.net/~alisonken1/openlp/bug-1386913/+merge/241157
Your team OpenLP Core is subscribed to branch lp:openlp.
References