Fixed songshowplus encoding issue.

Fixed issue where enable-chord settings was not setup correctly for tests.

bzr-revno: 2745
This commit is contained in:
Tomas Groth 2017-05-30 22:50:26 +02:00
commit 81492013ed
5 changed files with 28 additions and 8 deletions

View File

@ -23,7 +23,6 @@
The :mod:`songshowplus` module provides the functionality for importing SongShow Plus songs into the OpenLP
database.
"""
import chardet
import os
import logging
import re
@ -226,6 +225,7 @@ class SongShowPlusImport(SongImport):
def decode(self, data):
try:
return str(data, chardet.detect(data)['encoding'])
# Don't question this, it works...
return data.decode('utf-8').encode('cp1251').decode('cp1251')
except:
return str(data, retrieve_windows_encoding())
return data.decode(retrieve_windows_encoding())

View File

@ -27,10 +27,15 @@ from unittest.mock import MagicMock
from PyQt5 import QtCore
from openlp.core.common import Settings
from openlp.plugins.songs.forms.editverseform import EditVerseForm
from tests.helpers.testmixin import TestMixin
__default_settings__ = {
'songs/enable chords': True,
}
class TestEditVerseForm(TestCase, TestMixin):
"""
@ -40,9 +45,10 @@ class TestEditVerseForm(TestCase, TestMixin):
"""
Set up the components need for all tests.
"""
self.edit_verse_form = EditVerseForm(None)
self.setup_application()
self.build_settings()
Settings().extend_default_settings(__default_settings__)
self.edit_verse_form = EditVerseForm(None)
QtCore.QLocale.setDefault(QtCore.QLocale('en_GB'))
def tearDown(self):

View File

@ -27,12 +27,16 @@ from unittest.mock import MagicMock
from PyQt5 import QtWidgets
from openlp.core.common import Registry
from openlp.core.common import Registry, Settings
from openlp.core.common.uistrings import UiStrings
from openlp.plugins.songs.forms.editsongform import EditSongForm
from tests.helpers.testmixin import TestMixin
__default_settings__ = {
'songs/enable chords': True,
}
class TestEditSongForm(TestCase, TestMixin):
"""
@ -48,12 +52,15 @@ class TestEditSongForm(TestCase, TestMixin):
self.main_window = QtWidgets.QMainWindow()
Registry().register('main_window', self.main_window)
Registry().register('theme_manager', MagicMock())
self.build_settings()
Settings().extend_default_settings(__default_settings__)
self.form = EditSongForm(MagicMock(), self.main_window, MagicMock())
def tearDown(self):
"""
Delete all the C++ objects at the end so that we don't have a segfault
"""
self.destroy_settings()
del self.form
del self.main_window

View File

@ -26,10 +26,14 @@ from unittest import TestCase
from PyQt5 import QtCore, QtTest, QtWidgets
from openlp.core.common import Registry
from openlp.core.common import Registry, Settings
from openlp.plugins.songs.forms.editverseform import EditVerseForm
from tests.helpers.testmixin import TestMixin
__default_settings__ = {
'songs/enable chords': True,
}
class TestEditVerseForm(TestCase, TestMixin):
"""
@ -44,12 +48,15 @@ class TestEditVerseForm(TestCase, TestMixin):
self.setup_application()
self.main_window = QtWidgets.QMainWindow()
Registry().register('main_window', self.main_window)
self.build_settings()
Settings().extend_default_settings(__default_settings__)
self.form = EditVerseForm()
def tearDown(self):
"""
Delete all the C++ objects at the end so that we don't have a segfault
"""
self.destroy_settings()
del self.form
del self.main_window

View File

@ -15,7 +15,7 @@
"v1"
],
[
"Did we in our own strength confide, our striving would be losing;\r\nWere not the right Man on our side, the Man of God’s own choosing:\r\nDost ask who that may be? Christ Jesus, it is He;\r\nLord Sabaoth, His Name, from age to age the same,\r\nAnd He must win the battle.\r\n",
"Did we in our own strength confide, our striving would be losing;\r\nWere not the right Man on our side, the Man of Gods own choosing:\r\nDost ask who that may be? Christ Jesus, it is He;\r\nLord Sabaoth, His Name, from age to age the same,\r\nAnd He must win the battle.\r\n",
"v2"
],
[
@ -23,7 +23,7 @@
"v3"
],
[
"That word above all earthly powers, no thanks to them, abideth;\r\nThe Spirit and the gifts are ours through Him Who with us sideth:\r\nLet goods and kindred go, this mortal life also;\r\nThe body they may kill: God’s truth abideth still,\r\nHis kingdom is forever.\r\n",
"That word above all earthly powers, no thanks to them, abideth;\r\nThe Spirit and the gifts are ours through Him Who with us sideth:\r\nLet goods and kindred go, this mortal life also;\r\nThe body they may kill: Gods truth abideth still,\r\nHis kingdom is forever.\r\n",
"v4"
]
]