fixed bug #1116528 (Song Import Wizzard does not work in trunk)

fixed exception form not being displayed
Always log exceptions
fixed/extended tes

bzr-revno: 2195
This commit is contained in:
Andreas Preikschat 2013-03-01 17:27:03 +00:00 committed by Tim Bentley
commit 7d0b2e9785
3 changed files with 16 additions and 5 deletions

View File

@ -184,10 +184,8 @@ class OpenLP(QtGui.QApplication):
``traceback``
A traceback object with the details of where the exception occurred.
"""
if not hasattr(self, u'mainWindow'):
log.exception(''.join(format_exception(exctype, value, traceback)))
return
if not hasattr(self, u'exceptionForm'):
log.exception(''.join(format_exception(exctype, value, traceback)))
if not hasattr(self, u'exception_form'):
self.exception_form = ExceptionForm(self.main_window)
self.exception_form.exceptionTextEdit.setPlainText(''.join(format_exception(exctype, value, traceback)))
self.set_normal_cursor()

View File

@ -35,7 +35,7 @@ import os
from PyQt4 import QtCore, QtGui
from openlp.core.lib import Settings, UiStrings, translate
from openlp.core.lib import Registry, Settings, UiStrings, translate
from openlp.core.lib.ui import critical_error_message_box
from openlp.core.ui.wizard import OpenLPWizard, WizardStrings
from openlp.plugins.songs.lib.importer import SongFormat, SongFormatSelect
@ -489,6 +489,16 @@ class SongImportForm(OpenLPWizard):
self.formatWidgets[this_format][u'importWidget'] = importWidget
return importWidget
def _get_main_window(self):
"""
Adds the main window to the class dynamically
"""
if not hasattr(self, u'_main_window'):
self._main_window = Registry().get(u'main_window')
return self._main_window
main_window = property(_get_main_window)
class SongImportSourcePage(QtGui.QWizardPage):
"""

View File

@ -85,6 +85,9 @@ class TestAppLocation(TestCase):
# When: Get the list of files.
result = AppLocation.get_files(u'section', u'.mp3')
# Then: Check if the section parameter was used correctly.
mocked_listdir.assert_called_with(u'test/dir/section')
# Then: check if the file lists are identical.
assert result == [u'file5.mp3', u'file6.mp3'], u'The file lists should be identical.'