コード例 #1
0
 def accept(self):
     """
     Test if any invalid chords has been entered before closing the verse editor
     """
     if Registry().get('settings').value('songs/enable chords'):
         try:
             transpose_lyrics(self.verse_text_edit.toPlainText(), 1)
             super(EditVerseForm, self).accept()
         except ValueError as ve:
             # Transposing failed
             critical_error_message_box(title=translate('SongsPlugin.EditVerseForm', 'Invalid Chord'),
                                        message=translate('SongsPlugin.EditVerseForm',
                                                          'An invalid chord was detected:\n{err_msg}'
                                                          .format(err_msg=ve)))
     else:
         super(EditVerseForm, self).accept()
コード例 #2
0
ファイル: test_lib.py プロジェクト: ipic/projecao
    def test_transpose_lyrics(self, mocked_transpose_verse):
        """
        Test that the transpose_lyrics() splits verses correctly
        """
        # GIVEN: Lyrics with verse splitters and a mocked settings
        lyrics = '---[Verse:1]---\n'\
                 'Amazing grace how sweet the sound\n'\
                 '[---]\n'\
                 'That saved a wretch like me.\n'\
                 '---[Verse:2]---\n'\
                 'I once was lost but now I\'m found.'
        self.settings.value.return_value = 'english'

        # WHEN: Transposing the lyrics
        transpose_lyrics(lyrics, 1)

        # THEN: transpose_verse should have been called
        mocked_transpose_verse.assert_any_call('', 1, 'english')
        mocked_transpose_verse.assert_any_call(
            '\nAmazing grace how sweet the sound\n', 1, 'english')
        mocked_transpose_verse.assert_any_call(
            '\nThat saved a wretch like me.\n', 1, 'english')
        mocked_transpose_verse.assert_any_call(
            '\nI once was lost but now I\'m found.', 1, 'english')
コード例 #3
0
 def on_transpose_up_button_clicked(self):
     """
     The transpose up button clicked
     """
     try:
         transposed_lyrics = transpose_lyrics(self.verse_text_edit.toPlainText(), 1)
         self.verse_text_edit.setPlainText(transposed_lyrics)
     except ValueError as ve:
         # Transposing failed
         critical_error_message_box(title=translate('SongsPlugin.EditVerseForm', 'Transposing failed'),
                                    message=translate('SongsPlugin.EditVerseForm',
                                                      'Transposing failed because of invalid chord:\n{err_msg}'
                                                      .format(err_msg=ve)))
         return
     self.verse_text_edit.setFocus()
     self.verse_text_edit.moveCursor(QtGui.QTextCursor.End)