← Back to team overview

openlp-core team mailing list archive

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