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. _______________________________________________ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp