From d1c4cea7775828cfbd4d2f2d02ed77f5f8bfce5b Mon Sep 17 00:00:00 2001 From: Raoul Snyman Date: Fri, 26 Oct 2018 18:40:20 -0700 Subject: [PATCH] Fix linting issues --- openlp/core/api/__init__.py | 7 ------ openlp/core/api/endpoint/__init__.py | 1 - openlp/core/api/http/__init__.py | 1 - openlp/core/api/poll.py | 6 ++--- openlp/core/common/i18n.py | 2 +- openlp/core/lib/db.py | 8 +++---- openlp/core/lib/serviceitem.py | 2 +- openlp/core/projectors/manager.py | 14 +++++------ openlp/core/ui/exceptiondialog.py | 2 +- openlp/core/ui/exceptionform.py | 2 +- openlp/core/ui/icons.py | 2 +- openlp/core/ui/maindisplay.py | 4 ++-- openlp/core/ui/media/__init__.py | 7 ------ .../core/ui/media/vendor/mediainfoWrapper.py | 6 ++--- openlp/core/ui/media/vlcplayer.py | 6 ++--- openlp/core/ui/slidecontroller.py | 2 +- openlp/core/version.py | 3 --- openlp/core/widgets/edits.py | 1 - openlp/core/widgets/views.py | 2 +- openlp/core/widgets/wizard.py | 1 - openlp/plugins/alerts/endpoint.py | 1 - openlp/plugins/alerts/forms/__init__.py | 2 -- openlp/plugins/alerts/lib/__init__.py | 3 --- .../plugins/bibles/forms/bibleimportform.py | 6 ++--- openlp/plugins/bibles/lib/manager.py | 2 +- openlp/plugins/media/lib/__init__.py | 5 ---- .../presentations/lib/impresscontroller.py | 16 ++++++------- .../lib/presentationcontroller.py | 4 ++-- openlp/plugins/songs/forms/editsongform.py | 4 ++-- .../plugins/songs/lib/importers/openoffice.py | 6 ++--- .../songs/lib/importers/songshowplus.py | 2 +- tests/functional/openlp_core/api/test_tab.py | 1 - .../functional/openlp_core/common/test_db.py | 2 +- .../openlp_core/common/test_path.py | 2 +- tests/functional/openlp_core/lib/test_lib.py | 24 +++++++++---------- .../openlp_core/ui/media/test_vlcplayer.py | 11 ++++----- tests/functional/openlp_core/ui/test_icons.py | 4 ++-- .../openlp_core/ui/test_maindisplay.py | 2 +- .../openlp_core/ui/test_servicemanager.py | 1 - .../openlp_plugins/bibles/test_lib.py | 2 +- .../openlp_plugins/bibles/test_mediaitem.py | 8 +++---- .../openlp_plugins/bibles/test_upgrade.py | 2 -- .../presentations/test_impresscontroller.py | 1 - .../openlp_plugins/songs/test_lib.py | 2 +- .../openlp_plugins/songs/test_mediashout.py | 4 ++-- .../openlp_core/common/test_utils.py | 1 - .../bibles/forms/test_bibleimportform.py | 1 - .../custom/forms/test_customform.py | 2 +- .../custom/forms/test_customslideform.py | 4 ++-- .../media/forms/test_mediaclipselectorform.py | 8 +++---- .../projectors/test_projector_sourceform.py | 2 +- 51 files changed, 87 insertions(+), 127 deletions(-) diff --git a/openlp/core/api/__init__.py b/openlp/core/api/__init__.py index f3081d022..711ded4ae 100644 --- a/openlp/core/api/__init__.py +++ b/openlp/core/api/__init__.py @@ -19,10 +19,3 @@ # with this program; if not, write to the Free Software Foundation, Inc., 59 # # Temple Place, Suite 330, Boston, MA 02111-1307 USA # ############################################################################### - -from openlp.core.api.http import register_endpoint, requires_auth -from openlp.core.api.http.endpoint import Endpoint -from openlp.core.api.poll import Poller -from openlp.core.api.tab import ApiTab - -__all__ = ['Endpoint', 'ApiTab', 'register_endpoint', 'requires_auth'] diff --git a/openlp/core/api/endpoint/__init__.py b/openlp/core/api/endpoint/__init__.py index ffc1d8628..b6feaac79 100644 --- a/openlp/core/api/endpoint/__init__.py +++ b/openlp/core/api/endpoint/__init__.py @@ -22,4 +22,3 @@ """ The Endpoint class, which provides plugins with a way to serve their own portion of the API """ -from .pluginhelpers import search, live, service diff --git a/openlp/core/api/http/__init__.py b/openlp/core/api/http/__init__.py index 9b8086519..176f87fbb 100644 --- a/openlp/core/api/http/__init__.py +++ b/openlp/core/api/http/__init__.py @@ -27,7 +27,6 @@ from webob import Response from openlp.core.api.http.wsgiapp import WSGIApplication from openlp.core.common.settings import Settings -from .errors import NotFound, ServerError, HttpError application = WSGIApplication('api') diff --git a/openlp/core/api/poll.py b/openlp/core/api/poll.py index b3149d470..d438a18a9 100644 --- a/openlp/core/api/poll.py +++ b/openlp/core/api/poll.py @@ -90,7 +90,7 @@ class Poller(RegistryProperties): if self.stage_cache is None: try: page = get_web_page("http://localhost:4316/stage") - except: + except Exception: page = None if page: self.stage_cache = True @@ -106,7 +106,7 @@ class Poller(RegistryProperties): if self.live_cache is None: try: page = get_web_page("http://localhost:4316/main") - except: + except Exception: page = None if page: self.live_cache = True @@ -122,7 +122,7 @@ class Poller(RegistryProperties): if self.chords_cache is None: try: page = get_web_page("http://localhost:4316/chords") - except: + except Exception: page = None if page: self.chords_cache = True diff --git a/openlp/core/common/i18n.py b/openlp/core/common/i18n.py index 56e6be724..0f89ed076 100644 --- a/openlp/core/common/i18n.py +++ b/openlp/core/common/i18n.py @@ -522,7 +522,7 @@ def get_locale_key(string): icu_locale = icu.Locale(language) ICU_COLLATOR = icu.Collator.createInstance(icu_locale) return ICU_COLLATOR.getSortKey(string) - except: + except Exception: return locale.strxfrm(string).encode() diff --git a/openlp/core/lib/db.py b/openlp/core/lib/db.py index 6898e0469..4edc5835a 100644 --- a/openlp/core/lib/db.py +++ b/openlp/core/lib/db.py @@ -408,7 +408,7 @@ class Manager(object): self.session.rollback() log.exception('Object list save failed') return False - except: + except Exception: self.session.rollback() raise @@ -438,7 +438,7 @@ class Manager(object): self.session.rollback() log.exception('Object list save failed') return False - except: + except Exception: self.session.rollback() raise @@ -555,7 +555,7 @@ class Manager(object): self.session.rollback() log.exception('Failed to delete object') return False - except: + except Exception: self.session.rollback() raise else: @@ -590,7 +590,7 @@ class Manager(object): self.session.rollback() log.exception('Failed to delete {name} records'.format(name=object_class.__name__)) return False - except: + except Exception: self.session.rollback() raise diff --git a/openlp/core/lib/serviceitem.py b/openlp/core/lib/serviceitem.py index 18984f172..6e0715047 100644 --- a/openlp/core/lib/serviceitem.py +++ b/openlp/core/lib/serviceitem.py @@ -39,7 +39,7 @@ from openlp.core.ui.icons import UiIcons from openlp.core.common.mixins import RegistryProperties from openlp.core.common.path import Path from openlp.core.common.settings import Settings -from openlp.core.lib import ImageSource, build_icon, clean_tags, expand_tags, expand_chords +from openlp.core.lib import ImageSource, clean_tags, expand_tags, expand_chords log = logging.getLogger(__name__) diff --git a/openlp/core/projectors/manager.py b/openlp/core/projectors/manager.py index add7cd4c0..ec77128bb 100644 --- a/openlp/core/projectors/manager.py +++ b/openlp/core/projectors/manager.py @@ -470,7 +470,7 @@ class ProjectorManager(QtWidgets.QWidget, RegistryBase, UiProjectorManager, LogM projector = list_item.data(QtCore.Qt.UserRole) try: projector.link.set_shutter_closed() - except: + except Exception: continue def on_doubleclick_item(self, item, opt=None): @@ -485,7 +485,7 @@ class ProjectorManager(QtWidgets.QWidget, RegistryBase, UiProjectorManager, LogM try: log.debug('ProjectorManager: Calling connect_to_host() on "{ip}"'.format(ip=projector.link.ip)) projector.link.connect_to_host() - except: + except Exception: log.debug('ProjectorManager: "{ip}" already connected - skipping'.format(ip=projector.link.ip)) return @@ -504,7 +504,7 @@ class ProjectorManager(QtWidgets.QWidget, RegistryBase, UiProjectorManager, LogM projector = list_item.data(QtCore.Qt.UserRole) try: projector.link.connect_to_host() - except: + except Exception: continue def on_delete_projector(self, opt=None): @@ -586,7 +586,7 @@ class ProjectorManager(QtWidgets.QWidget, RegistryBase, UiProjectorManager, LogM projector = list_item.data(QtCore.Qt.UserRole) try: projector.link.disconnect_from_host() - except: + except Exception: continue def on_edit_projector(self, opt=None): @@ -619,7 +619,7 @@ class ProjectorManager(QtWidgets.QWidget, RegistryBase, UiProjectorManager, LogM projector = list_item.data(QtCore.Qt.UserRole) try: projector.link.set_power_off() - except: + except Exception: continue def on_poweron_projector(self, opt=None): @@ -637,7 +637,7 @@ class ProjectorManager(QtWidgets.QWidget, RegistryBase, UiProjectorManager, LogM projector = list_item.data(QtCore.Qt.UserRole) try: projector.link.set_power_on() - except: + except Exception: continue def on_show_projector(self, opt=None): @@ -655,7 +655,7 @@ class ProjectorManager(QtWidgets.QWidget, RegistryBase, UiProjectorManager, LogM projector = list_item.data(QtCore.Qt.UserRole) try: projector.link.set_shutter_open() - except: + except Exception: continue def on_status_projector(self, opt=None): diff --git a/openlp/core/ui/exceptiondialog.py b/openlp/core/ui/exceptiondialog.py index e24dc5b90..96ff38562 100644 --- a/openlp/core/ui/exceptiondialog.py +++ b/openlp/core/ui/exceptiondialog.py @@ -23,7 +23,7 @@ The GUI widgets of the exception dialog. """ -from PyQt5 import QtGui, QtWidgets +from PyQt5 import QtWidgets from openlp.core.common.i18n import translate from openlp.core.ui.icons import UiIcons diff --git a/openlp/core/ui/exceptionform.py b/openlp/core/ui/exceptionform.py index b981bddbc..73bcc4b53 100644 --- a/openlp/core/ui/exceptionform.py +++ b/openlp/core/ui/exceptionform.py @@ -241,5 +241,5 @@ class ExceptionForm(QtWidgets.QDialog, Ui_ExceptionDialog, RegistryProperties): return node.getByName('ooSetupVersion') except ImportError: return '-' - except: + except Exception: return '- (Possible non-standard UNO installation)' diff --git a/openlp/core/ui/icons.py b/openlp/core/ui/icons.py index 9d4102579..1a8839c96 100644 --- a/openlp/core/ui/icons.py +++ b/openlp/core/ui/icons.py @@ -175,7 +175,7 @@ class UiIcons(object): import sys log.error("Unexpected error: %s" % sys.exc_info()) setattr(self, key, qta.icon('fa.plus-circle', color='red')) - except: + except KeyError: setattr(self, key, qta.icon('fa.plus-circle', color='red')) self.main_icon = build_icon(':/icon/openlp-logo.svg') diff --git a/openlp/core/ui/maindisplay.py b/openlp/core/ui/maindisplay.py index d07884d36..996e69836 100644 --- a/openlp/core/ui/maindisplay.py +++ b/openlp/core/ui/maindisplay.py @@ -172,7 +172,7 @@ class MainDisplay(Display, LogMixin, RegistryProperties): # Get a pointer to the underlying NSView try: nsview_pointer = self.winId().ascapsule() - except: + except Exception: nsview_pointer = voidptr(self.winId()).ascapsule() # Set PyCapsule name so pyobjc will accept it pythonapi.PyCapsule_SetName.restype = c_void_p @@ -582,7 +582,7 @@ class MainDisplay(Display, LogMixin, RegistryProperties): window_id = window.winId().__int__() main_window_id = self.main_window.winId().__int__() self_id = self.winId().__int__() - except: + except Exception: return # If the passed window has the same id as our window make sure the display has the proper level and # collection behavior. diff --git a/openlp/core/ui/media/__init__.py b/openlp/core/ui/media/__init__.py index 976e0b744..411b93180 100644 --- a/openlp/core/ui/media/__init__.py +++ b/openlp/core/ui/media/__init__.py @@ -142,10 +142,3 @@ def format_milliseconds(milliseconds): minutes=minutes, seconds=seconds, millis=millis) - - -from .mediacontroller import MediaController -from .playertab import PlayerTab -from .endpoint import media_endpoint - -__all__ = ['MediaController', 'PlayerTab'] diff --git a/openlp/core/ui/media/vendor/mediainfoWrapper.py b/openlp/core/ui/media/vendor/mediainfoWrapper.py index d28fe1395..649210611 100644 --- a/openlp/core/ui/media/vendor/mediainfoWrapper.py +++ b/openlp/core/ui/media/vendor/mediainfoWrapper.py @@ -37,7 +37,7 @@ class Track(object): def __getattribute__(self, name): try: return object.__getattribute__(self, name) - except: + except Exception: pass return None @@ -63,14 +63,14 @@ class Track(object): try: primary = o.replace('other_', '') setattr(self, primary, int(getattr(self, primary))) - except: + except Exception: for v in getattr(self, o): try: current = getattr(self, primary) setattr(self, primary, int(v)) getattr(self, o).append(current) break - except: + except Exception: pass def __repr__(self): diff --git a/openlp/core/ui/media/vlcplayer.py b/openlp/core/ui/media/vlcplayer.py index 13888e28d..45f66332f 100644 --- a/openlp/core/ui/media/vlcplayer.py +++ b/openlp/core/ui/media/vlcplayer.py @@ -69,7 +69,7 @@ def get_vlc(): is_vlc_available = False try: is_vlc_available = bool(sys.modules['openlp.core.ui.media.vendor.vlc'].get_default_instance()) - except: + except Exception: pass if is_vlc_available: return sys.modules['openlp.core.ui.media.vendor.vlc'] @@ -106,7 +106,7 @@ def get_vlc(): if is_vlc_available: try: VERSION = vlc.libvlc_get_version().decode('UTF-8') - except: + except Exception: VERSION = '0.0.0' # LooseVersion does not work when a string contains letter and digits (e. g. 2.0.5 Twoflower). # http://bugs.python.org/issue14894 @@ -130,7 +130,7 @@ if is_linux() and 'nose' not in sys.argv[0] and get_vlc(): # If libx11.so.6 was not found, fallback to more generic libx11.so x11 = ctypes.cdll.LoadLibrary('libX11.so') x11.XInitThreads() - except: + except Exception: log.exception('Failed to run XInitThreads(), VLC might not work properly!') diff --git a/openlp/core/ui/slidecontroller.py b/openlp/core/ui/slidecontroller.py index 12c3abdab..e2f942b13 100644 --- a/openlp/core/ui/slidecontroller.py +++ b/openlp/core/ui/slidecontroller.py @@ -36,7 +36,7 @@ from openlp.core.common.mixins import LogMixin, RegistryProperties from openlp.core.common.registry import Registry, RegistryBase from openlp.core.common.settings import Settings from openlp.core.display.screens import ScreenList -from openlp.core.lib import ImageSource, ServiceItemAction, build_icon +from openlp.core.lib import ImageSource, ServiceItemAction from openlp.core.lib.htmlbuilder import build_html from openlp.core.lib.serviceitem import ServiceItem, ItemCapabilities from openlp.core.lib.ui import create_action diff --git a/openlp/core/version.py b/openlp/core/version.py index 938a8d3ce..3a57908e5 100644 --- a/openlp/core/version.py +++ b/openlp/core/version.py @@ -24,11 +24,8 @@ The :mod:`openlp.core.version` module downloads the version details for OpenLP. """ import logging import platform -import sys -import time from datetime import date from distutils.version import LooseVersion -from subprocess import Popen, PIPE import requests from PyQt5 import QtCore diff --git a/openlp/core/widgets/edits.py b/openlp/core/widgets/edits.py index 3333df633..adab9c25f 100644 --- a/openlp/core/widgets/edits.py +++ b/openlp/core/widgets/edits.py @@ -31,7 +31,6 @@ from openlp.core.common import CONTROL_CHARS from openlp.core.common.i18n import UiStrings, translate from openlp.core.common.path import Path, path_to_str, str_to_path from openlp.core.common.settings import Settings -from openlp.core.lib import build_icon from openlp.core.lib.formattingtags import FormattingTags from openlp.core.lib.ui import create_widget_action, create_action from openlp.core.ui.icons import UiIcons diff --git a/openlp/core/widgets/views.py b/openlp/core/widgets/views.py index bcb097fca..6429cb613 100644 --- a/openlp/core/widgets/views.py +++ b/openlp/core/widgets/views.py @@ -135,7 +135,7 @@ class ListPreviewWidget(QtWidgets.QTableWidget, RegistryProperties): # Get and validate label widget containing slide & adjust max width try: self.cellWidget(row, 0).children()[1].setMaximumWidth(new_height * self.screen_ratio) - except: + except Exception: return def screen_size_changed(self, screen_ratio): diff --git a/openlp/core/widgets/wizard.py b/openlp/core/widgets/wizard.py index 5bd9f337f..3df3b76a8 100644 --- a/openlp/core/widgets/wizard.py +++ b/openlp/core/widgets/wizard.py @@ -32,7 +32,6 @@ from openlp.core.ui.icons import UiIcons from openlp.core.common.mixins import RegistryProperties from openlp.core.common.registry import Registry from openlp.core.common.settings import Settings -from openlp.core.lib import build_icon from openlp.core.lib.ui import add_welcome_page from openlp.core.widgets.dialogs import FileDialog diff --git a/openlp/plugins/alerts/endpoint.py b/openlp/plugins/alerts/endpoint.py index 542d5ef37..85d534ee3 100644 --- a/openlp/plugins/alerts/endpoint.py +++ b/openlp/plugins/alerts/endpoint.py @@ -22,7 +22,6 @@ import json import logging import urllib -from urllib.parse import urlparse from openlp.core.api.http import requires_auth from openlp.core.api.http.endpoint import Endpoint diff --git a/openlp/plugins/alerts/forms/__init__.py b/openlp/plugins/alerts/forms/__init__.py index ff297ae8f..450f19e8a 100644 --- a/openlp/plugins/alerts/forms/__init__.py +++ b/openlp/plugins/alerts/forms/__init__.py @@ -40,5 +40,3 @@ mentioned above, like so:: This allows OpenLP to use ``self.object`` for all the GUI elements while keeping them separate from the functionality, so that it is easier to recreate the GUI from the .ui files later if necessary. """ - -from .alertform import AlertForm diff --git a/openlp/plugins/alerts/lib/__init__.py b/openlp/plugins/alerts/lib/__init__.py index 4aae58891..711ded4ae 100644 --- a/openlp/plugins/alerts/lib/__init__.py +++ b/openlp/plugins/alerts/lib/__init__.py @@ -19,6 +19,3 @@ # with this program; if not, write to the Free Software Foundation, Inc., 59 # # Temple Place, Suite 330, Boston, MA 02111-1307 USA # ############################################################################### - -from .alertsmanager import AlertsManager -from .alertstab import AlertsTab diff --git a/openlp/plugins/bibles/forms/bibleimportform.py b/openlp/plugins/bibles/forms/bibleimportform.py index 912ab26e5..974d7c25a 100644 --- a/openlp/plugins/bibles/forms/bibleimportform.py +++ b/openlp/plugins/bibles/forms/bibleimportform.py @@ -31,7 +31,7 @@ from lxml import etree try: from pysword import modules PYSWORD_AVAILABLE = True -except: +except ImportError: PYSWORD_AVAILABLE = False from openlp.core.common import trace_error_handler @@ -613,7 +613,7 @@ class BibleImportForm(OpenLPWizard): self.sword_bible_combo_box.clear() for key in bible_keys: self.sword_bible_combo_box.addItem(self.pysword_folder_modules_json[key]['description'], key) - except: + except Exception: self.sword_bible_combo_box.clear() def on_sword_zipfile_path_edit_path_changed(self, new_path): @@ -628,7 +628,7 @@ class BibleImportForm(OpenLPWizard): self.sword_zipbible_combo_box.clear() for key in bible_keys: self.sword_zipbible_combo_box.addItem(self.pysword_zip_modules_json[key]['description'], key) - except: + except Exception: self.sword_zipbible_combo_box.clear() def register_fields(self): diff --git a/openlp/plugins/bibles/lib/manager.py b/openlp/plugins/bibles/lib/manager.py index fce411870..4725d4066 100644 --- a/openlp/plugins/bibles/lib/manager.py +++ b/openlp/plugins/bibles/lib/manager.py @@ -38,7 +38,7 @@ from .importers.zefania import ZefaniaBible try: from .importers.sword import SwordBible -except: +except ImportError: pass log = logging.getLogger(__name__) diff --git a/openlp/plugins/media/lib/__init__.py b/openlp/plugins/media/lib/__init__.py index c6c0f31ae..711ded4ae 100644 --- a/openlp/plugins/media/lib/__init__.py +++ b/openlp/plugins/media/lib/__init__.py @@ -19,8 +19,3 @@ # with this program; if not, write to the Free Software Foundation, Inc., 59 # # Temple Place, Suite 330, Boston, MA 02111-1307 USA # ############################################################################### - -from .mediaitem import MediaMediaItem -from .mediatab import MediaTab - -__all__ = ['MediaMediaItem'] diff --git a/openlp/plugins/presentations/lib/impresscontroller.py b/openlp/plugins/presentations/lib/impresscontroller.py index 6bd05e2b1..1c9506f51 100644 --- a/openlp/plugins/presentations/lib/impresscontroller.py +++ b/openlp/plugins/presentations/lib/impresscontroller.py @@ -121,7 +121,7 @@ class ImpressController(PresentationController): while uno_instance is None and loop < 3: try: uno_instance = get_uno_instance(resolver) - except: + except Exception: log.warning('Unable to find running instance ') self.start_process() loop += 1 @@ -130,7 +130,7 @@ class ImpressController(PresentationController): log.debug('get UNO Desktop Openoffice - createInstanceWithContext - Desktop') desktop = self.manager.createInstanceWithContext("com.sun.star.frame.Desktop", uno_instance) return desktop - except: + except Exception: log.warning('Failed to get UNO desktop') return None @@ -172,7 +172,7 @@ class ImpressController(PresentationController): desktop = self.get_uno_desktop() else: desktop = self.get_com_desktop() - except: + except Exception: log.warning('Failed to find an OpenOffice desktop to terminate') if not desktop: return @@ -190,7 +190,7 @@ class ImpressController(PresentationController): try: desktop.terminate() log.debug('OpenOffice killed') - except: + except Exception: log.warning('Failed to terminate OpenOffice') @@ -235,7 +235,7 @@ class ImpressDocument(PresentationDocument): properties = tuple(properties) try: self.document = desktop.loadComponentFromURL(url, '_blank', 0, properties) - except: + except Exception: log.warning('Failed to load presentation {url}'.format(url=url)) return False self.presentation = self.document.getPresentation() @@ -274,7 +274,7 @@ class ImpressDocument(PresentationDocument): delete_file(path) except ErrorCodeIOException as exception: log.exception('ERROR! ErrorCodeIOException {error:d}'.format(error=exception.ErrCode)) - except: + except Exception: log.exception('{path} - Unable to store openoffice preview'.format(path=path)) def create_property(self, name, value): @@ -302,7 +302,7 @@ class ImpressDocument(PresentationDocument): self.presentation.end() self.presentation = None self.document.dispose() - except: + except Exception: log.warning("Closing presentation failed") self.document = None self.controller.remove_doc(self) @@ -319,7 +319,7 @@ class ImpressDocument(PresentationDocument): if self.document.getPresentation() is None: log.debug("getPresentation failed to find a presentation") return False - except: + except Exception: log.warning("getPresentation failed to find a presentation") return False return True diff --git a/openlp/plugins/presentations/lib/presentationcontroller.py b/openlp/plugins/presentations/lib/presentationcontroller.py index a7b9a7d7d..fb27193f5 100644 --- a/openlp/plugins/presentations/lib/presentationcontroller.py +++ b/openlp/plugins/presentations/lib/presentationcontroller.py @@ -326,14 +326,14 @@ class PresentationDocument(object): titles_path = self.get_thumbnail_folder() / 'titles.txt' try: titles = titles_path.read_text().splitlines() - except: + except Exception: log.exception('Failed to open/read existing titles file') titles = [] for slide_no, title in enumerate(titles, 1): notes_path = self.get_thumbnail_folder() / 'slideNotes{number:d}.txt'.format(number=slide_no) try: note = notes_path.read_text() - except: + except Exception: log.exception('Failed to open/read notes file') note = '' notes.append(note) diff --git a/openlp/plugins/songs/forms/editsongform.py b/openlp/plugins/songs/forms/editsongform.py index 06ca0d893..c292e22a0 100644 --- a/openlp/plugins/songs/forms/editsongform.py +++ b/openlp/plugins/songs/forms/editsongform.py @@ -319,7 +319,7 @@ class EditSongForm(QtWidgets.QDialog, Ui_EditSongDialog, RegistryProperties): for verse in multiple: self.song.verse_order = re.sub(r'([' + verse.upper() + verse.lower() + r'])(\W|$)', r'\g<1>1\2', self.song.verse_order) - except: + except Exception: log.exception('Problem processing song Lyrics \n{xml}'.format(xml=sxml.dump_xml())) raise @@ -1087,7 +1087,7 @@ class EditSongForm(QtWidgets.QDialog, Ui_EditSongDialog, RegistryProperties): if audio_path not in file_paths: try: audio_path.unlink() - except: + except Exception: log.exception('Could not remove file: {audio}'.format(audio=audio_path)) if not file_paths: try: diff --git a/openlp/plugins/songs/lib/importers/openoffice.py b/openlp/plugins/songs/lib/importers/openoffice.py index e1862c936..7f06b9d3d 100644 --- a/openlp/plugins/songs/lib/importers/openoffice.py +++ b/openlp/plugins/songs/lib/importers/openoffice.py @@ -134,7 +134,7 @@ class OpenOfficeImport(SongImport): process = QtCore.QProcess() process.startDetached(cmd) self.process_started = True - except: + except Exception: log.exception("start_ooo_process failed") def open_ooo_file(self, file_path): @@ -176,7 +176,7 @@ class OpenOfficeImport(SongImport): """ try: self.document.close(True) - except: + except Exception: log.exception('Exception in close_ooo_file - trying to ignore it.') self.document = None @@ -187,7 +187,7 @@ class OpenOfficeImport(SongImport): if self.process_started: try: self.desktop.terminate() - except: + except Exception: log.exception('Exception in close_ooo - trying to ignore it.') def process_presentation(self): diff --git a/openlp/plugins/songs/lib/importers/songshowplus.py b/openlp/plugins/songs/lib/importers/songshowplus.py index ceadbdf8f..15a611f9d 100644 --- a/openlp/plugins/songs/lib/importers/songshowplus.py +++ b/openlp/plugins/songs/lib/importers/songshowplus.py @@ -223,5 +223,5 @@ class SongShowPlusImport(SongImport): try: # Don't question this, it works... return data.decode('utf-8').encode('cp1251').decode('cp1251') - except: + except Exception: return data.decode(retrieve_windows_encoding()) diff --git a/tests/functional/openlp_core/api/test_tab.py b/tests/functional/openlp_core/api/test_tab.py index 1f61673f4..2c6758c46 100644 --- a/tests/functional/openlp_core/api/test_tab.py +++ b/tests/functional/openlp_core/api/test_tab.py @@ -24,7 +24,6 @@ This module contains tests for the lib submodule of the Remotes plugin. """ import re from unittest import TestCase -from unittest.mock import patch from PyQt5 import QtWidgets diff --git a/tests/functional/openlp_core/common/test_db.py b/tests/functional/openlp_core/common/test_db.py index 7fe59b35f..5147bf589 100644 --- a/tests/functional/openlp_core/common/test_db.py +++ b/tests/functional/openlp_core/common/test_db.py @@ -63,7 +63,7 @@ class TestUtilsDBFunctions(TestCase): if os.path.exists(self.tmp_folder): shutil.rmtree(self.tmp_folder) break - except: + except Exception: time.sleep(1) retries += 1 diff --git a/tests/functional/openlp_core/common/test_path.py b/tests/functional/openlp_core/common/test_path.py index 8581d9b49..c28900639 100644 --- a/tests/functional/openlp_core/common/test_path.py +++ b/tests/functional/openlp_core/common/test_path.py @@ -397,7 +397,7 @@ class TestPath(TestCase): try: create_paths(mocked_path) assert False, 'create_paths should have thrown an exception' - except: + except Exception: # THEN: `create_paths` raises an exception pass diff --git a/tests/functional/openlp_core/lib/test_lib.py b/tests/functional/openlp_core/lib/test_lib.py index 446a34f3c..15fa7c2fa 100644 --- a/tests/functional/openlp_core/lib/test_lib.py +++ b/tests/functional/openlp_core/lib/test_lib.py @@ -280,7 +280,7 @@ class TestLib(TestCase): # last test. try: thumb_path.unlink() - except: + except Exception: pass # Only continue when the thumb does not exist. @@ -298,7 +298,7 @@ class TestLib(TestCase): # Remove the thumb so that the test actually tests if the thumb will be created. try: thumb_path.unlink() - except: + except Exception: pass def test_create_thumb_no_size(self): @@ -314,7 +314,7 @@ class TestLib(TestCase): # last test. try: thumb_path.unlink() - except: + except Exception: pass # Only continue when the thumb does not exist. @@ -332,7 +332,7 @@ class TestLib(TestCase): # Remove the thumb so that the test actually tests if the thumb will be created. try: thumb_path.unlink() - except: + except Exception: pass def test_create_thumb_invalid_size(self): @@ -349,7 +349,7 @@ class TestLib(TestCase): # last test. try: thumb_path.unlink() - except: + except Exception: pass # Only continue when the thumb does not exist. @@ -367,7 +367,7 @@ class TestLib(TestCase): # Remove the thumb so that the test actually tests if the thumb will be created. try: thumb_path.unlink() - except: + except Exception: pass def test_create_thumb_width_only(self): @@ -384,7 +384,7 @@ class TestLib(TestCase): # last test. try: thumb_path.unlink() - except: + except Exception: pass # Only continue when the thumb does not exist. @@ -402,7 +402,7 @@ class TestLib(TestCase): # Remove the thumb so that the test actually tests if the thumb will be created. try: thumb_path.unlink() - except: + except Exception: pass def test_create_thumb_height_only(self): @@ -419,7 +419,7 @@ class TestLib(TestCase): # last test. try: thumb_path.unlink() - except: + except Exception: pass # Only continue when the thumb does not exist. @@ -437,7 +437,7 @@ class TestLib(TestCase): # Remove the thumb so that the test actually tests if the thumb will be created. try: thumb_path.unlink() - except: + except Exception: pass def test_create_thumb_empty_img(self): @@ -455,7 +455,7 @@ class TestLib(TestCase): # last test. try: thumb_path.unlink() - except: + except Exception: pass # Only continue when the thumb does not exist. @@ -485,7 +485,7 @@ class TestLib(TestCase): # Remove the thumb so that the test actually tests if the thumb will be created. try: thumb_path.unlink() - except: + except Exception: pass def test_check_item_selected_true(self): diff --git a/tests/functional/openlp_core/ui/media/test_vlcplayer.py b/tests/functional/openlp_core/ui/media/test_vlcplayer.py index 24c929563..dff4e2084 100644 --- a/tests/functional/openlp_core/ui/media/test_vlcplayer.py +++ b/tests/functional/openlp_core/ui/media/test_vlcplayer.py @@ -412,7 +412,7 @@ class TestVLCPlayer(TestCase, TestMixin): # WHEN: An audio CD is loaded into VLC with patch.object(vlc_player, 'volume') as mocked_volume, \ - patch.object(vlc_player, 'media_state_wait') as mocked_media_state_wait: + patch.object(vlc_player, 'media_state_wait'): result = vlc_player.load(mocked_display) # THEN: The video should be loaded @@ -457,7 +457,7 @@ class TestVLCPlayer(TestCase, TestMixin): # WHEN: An audio CD is loaded into VLC with patch.object(vlc_player, 'volume') as mocked_volume, \ - patch.object(vlc_player, 'media_state_wait') as mocked_media_state_wait: + patch.object(vlc_player, 'media_state_wait'): result = vlc_player.load(mocked_display) # THEN: The video should be loaded @@ -501,8 +501,7 @@ class TestVLCPlayer(TestCase, TestMixin): vlc_player = VlcPlayer(None) # WHEN: An audio CD is loaded into VLC - with patch.object(vlc_player, 'volume') as mocked_volume, \ - patch.object(vlc_player, 'media_state_wait') as mocked_media_state_wait: + with patch.object(vlc_player, 'volume'), patch.object(vlc_player, 'media_state_wait'): result = vlc_player.load(mocked_display) # THEN: The video should be loaded @@ -657,7 +656,7 @@ class TestVLCPlayer(TestCase, TestMixin): # WHEN: play() is called with patch.object(vlc_player, 'media_state_wait') as mocked_media_state_wait, \ - patch.object(vlc_player, 'volume') as mocked_volume: + patch.object(vlc_player, 'volume'): mocked_media_state_wait.return_value = False result = vlc_player.play(mocked_display) @@ -690,7 +689,7 @@ class TestVLCPlayer(TestCase, TestMixin): vlc_player.set_state(MediaState.Paused, mocked_display) # WHEN: play() is called - with patch.object(vlc_player, 'media_state_wait', return_value=True) as mocked_media_state_wait, \ + with patch.object(vlc_player, 'media_state_wait', return_value=True), \ patch.object(vlc_player, 'volume') as mocked_volume, \ patch.object(vlc_player, 'get_live_state', return_value=MediaState.Loaded): result = vlc_player.play(mocked_display) diff --git a/tests/functional/openlp_core/ui/test_icons.py b/tests/functional/openlp_core/ui/test_icons.py index cea393311..5057c7dea 100644 --- a/tests/functional/openlp_core/ui/test_icons.py +++ b/tests/functional/openlp_core/ui/test_icons.py @@ -22,8 +22,8 @@ """ Package to test the openlp.core.ui.icons package. """ -from unittest import TestCase, skipUnless -from unittest.mock import MagicMock, patch +from unittest import TestCase +from unittest.mock import patch from PyQt5 import QtGui diff --git a/tests/functional/openlp_core/ui/test_maindisplay.py b/tests/functional/openlp_core/ui/test_maindisplay.py index b72a3cb3e..0605c5f65 100644 --- a/tests/functional/openlp_core/ui/test_maindisplay.py +++ b/tests/functional/openlp_core/ui/test_maindisplay.py @@ -172,7 +172,7 @@ class TestMainDisplay(TestCase, TestMixin): main_display = MainDisplay(display) try: nsview_pointer = main_display.winId().ascapsule() - except: + except Exception: nsview_pointer = voidptr(main_display.winId()).ascapsule() pythonapi.PyCapsule_SetName.restype = c_void_p pythonapi.PyCapsule_SetName.argtypes = [py_object, c_char_p] diff --git a/tests/functional/openlp_core/ui/test_servicemanager.py b/tests/functional/openlp_core/ui/test_servicemanager.py index 89080f835..bc9d84abd 100644 --- a/tests/functional/openlp_core/ui/test_servicemanager.py +++ b/tests/functional/openlp_core/ui/test_servicemanager.py @@ -22,7 +22,6 @@ """ Package to test the openlp.core.ui.slidecontroller package. """ -import os from unittest import TestCase from unittest.mock import MagicMock, patch diff --git a/tests/functional/openlp_plugins/bibles/test_lib.py b/tests/functional/openlp_plugins/bibles/test_lib.py index 594b3e8cc..25e16b316 100644 --- a/tests/functional/openlp_plugins/bibles/test_lib.py +++ b/tests/functional/openlp_plugins/bibles/test_lib.py @@ -55,7 +55,7 @@ class TestLib(TestCase, TestMixin): # WHEN: Calling get_reference_separator for key, value in separators.items(): - _ = lib.get_reference_separator(key) + lib.get_reference_separator(key) # THEN: get_reference_separator should return the correct separator assert separators[key] == value diff --git a/tests/functional/openlp_plugins/bibles/test_mediaitem.py b/tests/functional/openlp_plugins/bibles/test_mediaitem.py index 2e7d76e90..69c29a2d6 100755 --- a/tests/functional/openlp_plugins/bibles/test_mediaitem.py +++ b/tests/functional/openlp_plugins/bibles/test_mediaitem.py @@ -756,7 +756,7 @@ class TestMediaItem(TestCase, TestMixin): # GIVEN: An instance of :class:`MediaManagerItem` and mocked media_item.settings and select_book_combo_box self.media_item.version_combo_box = MagicMock(**{'currentData.return_value': None}) self.media_item.select_book_combo_box = MagicMock() - with patch.object(self.media_item, 'initialise_advanced_bible') as mocked_initialise_advanced_bible: + with patch.object(self.media_item, 'initialise_advanced_bible'): # WHEN: Calling on_version_combo_box_index_changed self.media_item.on_version_combo_box_index_changed() @@ -774,7 +774,7 @@ class TestMediaItem(TestCase, TestMixin): mocked_bible_db.name = 'ABC' self.media_item.version_combo_box = MagicMock(**{'currentData.return_value': mocked_bible_db}) self.media_item.select_book_combo_box = MagicMock() - with patch.object(self.media_item, 'initialise_advanced_bible') as mocked_initialise_advanced_bible: + with patch.object(self.media_item, 'initialise_advanced_bible'): # WHEN: Calling on_version_combo_box_index_changed self.media_item.on_version_combo_box_index_changed() @@ -792,7 +792,7 @@ class TestMediaItem(TestCase, TestMixin): self.media_item.list_view = MagicMock(**{'count.return_value': 5}) self.media_item.style_combo_box = MagicMock() self.media_item.select_book_combo_box = MagicMock() - with patch.object(self.media_item, 'initialise_advanced_bible') as mocked_initialise_advanced_bible, \ + with patch.object(self.media_item, 'initialise_advanced_bible'), \ patch('openlp.plugins.bibles.lib.mediaitem.critical_error_message_box') \ as mocked_critical_error_message_box: @@ -815,7 +815,7 @@ class TestMediaItem(TestCase, TestMixin): self.media_item.list_view = MagicMock(**{'count.return_value': 5}) self.media_item.style_combo_box = MagicMock() self.media_item.select_book_combo_box = MagicMock() - with patch.object(self.media_item, 'initialise_advanced_bible') as mocked_initialise_advanced_bible, \ + with patch.object(self.media_item, 'initialise_advanced_bible'), \ patch('openlp.plugins.bibles.lib.mediaitem.critical_error_message_box', return_value=QtWidgets.QMessageBox.No) as mocked_critical_error_message_box: diff --git a/tests/functional/openlp_plugins/bibles/test_upgrade.py b/tests/functional/openlp_plugins/bibles/test_upgrade.py index 1e2520391..955f58c69 100644 --- a/tests/functional/openlp_plugins/bibles/test_upgrade.py +++ b/tests/functional/openlp_plugins/bibles/test_upgrade.py @@ -22,14 +22,12 @@ """ This module contains tests for the upgrade submodule of the Bibles plugin. """ -import os import shutil from pathlib import Path from tempfile import mkdtemp from unittest import TestCase from unittest.mock import MagicMock, call, patch -from PyQt5 import QtWidgets from sqlalchemy import create_engine from openlp.core.common.settings import ProxyMode diff --git a/tests/functional/openlp_plugins/presentations/test_impresscontroller.py b/tests/functional/openlp_plugins/presentations/test_impresscontroller.py index d3a911cec..321a5dc21 100644 --- a/tests/functional/openlp_plugins/presentations/test_impresscontroller.py +++ b/tests/functional/openlp_plugins/presentations/test_impresscontroller.py @@ -27,7 +27,6 @@ from tempfile import mkdtemp from unittest import TestCase from unittest.mock import MagicMock, patch -from openlp.core.common.path import Path from openlp.core.common.settings import Settings from openlp.plugins.presentations.lib.impresscontroller import ImpressController, ImpressDocument, TextType from openlp.plugins.presentations.presentationplugin import __default_settings__ diff --git a/tests/functional/openlp_plugins/songs/test_lib.py b/tests/functional/openlp_plugins/songs/test_lib.py index 09011a3e3..876503298 100644 --- a/tests/functional/openlp_plugins/songs/test_lib.py +++ b/tests/functional/openlp_plugins/songs/test_lib.py @@ -313,7 +313,7 @@ class TestLib(TestCase): # WHEN: Transposing it 1 down # THEN: An exception should be raised with self.assertRaises(ValueError) as err: - new_chord = transpose_chord(chord, -1, 'english') + transpose_chord(chord, -1, 'english') assert err.exception.args[0] == '\'T\' is not in list', \ 'ValueError exception should have been thrown for invalid chord' diff --git a/tests/functional/openlp_plugins/songs/test_mediashout.py b/tests/functional/openlp_plugins/songs/test_mediashout.py index 15adfded0..ffa448406 100644 --- a/tests/functional/openlp_plugins/songs/test_mediashout.py +++ b/tests/functional/openlp_plugins/songs/test_mediashout.py @@ -99,7 +99,7 @@ class TestMediaShoutImport(TestCase): mocked_pyodbc.connect.return_value = mocked_connection # WHEN: do_import is called - with patch.object(importer, 'import_wizard') as mocked_import_wizard, \ + with patch.object(importer, 'import_wizard'), \ patch.object(importer, 'process_song') as mocked_process_song: importer.do_import() @@ -133,7 +133,7 @@ class TestMediaShoutImport(TestCase): mocked_pyodbc.connect.return_value = mocked_connection # WHEN: do_import is called, but cancelled - with patch.object(importer, 'import_wizard') as mocked_import_wizard, \ + with patch.object(importer, 'import_wizard'), \ patch.object(importer, 'process_song') as mocked_process_song: importer.stop_import_flag = True importer.do_import() diff --git a/tests/interfaces/openlp_core/common/test_utils.py b/tests/interfaces/openlp_core/common/test_utils.py index 300eb2c0b..90abd6469 100644 --- a/tests/interfaces/openlp_core/common/test_utils.py +++ b/tests/interfaces/openlp_core/common/test_utils.py @@ -25,7 +25,6 @@ Functional tests to test the AppLocation class and related methods. from unittest import TestCase from openlp.core.common import is_not_image_file -from openlp.core.common.path import Path from tests.utils.constants import RESOURCE_PATH from tests.helpers.testmixin import TestMixin diff --git a/tests/interfaces/openlp_plugins/bibles/forms/test_bibleimportform.py b/tests/interfaces/openlp_plugins/bibles/forms/test_bibleimportform.py index 840039fbe..de7ec9712 100644 --- a/tests/interfaces/openlp_plugins/bibles/forms/test_bibleimportform.py +++ b/tests/interfaces/openlp_plugins/bibles/forms/test_bibleimportform.py @@ -46,7 +46,6 @@ class TestBibleImportForm(TestCase, TestMixin): self.setup_application() self.main_window = QtWidgets.QMainWindow() Registry().register('main_window', self.main_window) - PYSWORD_AVAILABLE = False self.mocked_manager = MagicMock() self.form = BibleImportForm(self.main_window, self.mocked_manager, MagicMock()) diff --git a/tests/interfaces/openlp_plugins/custom/forms/test_customform.py b/tests/interfaces/openlp_plugins/custom/forms/test_customform.py index 96f265970..8f3ae7b24 100644 --- a/tests/interfaces/openlp_plugins/custom/forms/test_customform.py +++ b/tests/interfaces/openlp_plugins/custom/forms/test_customform.py @@ -84,7 +84,7 @@ class TestEditCustomForm(TestCase, TestMixin): Test the on_add_button_clicked_test method / add_button button. """ # GIVEN: A mocked QDialog.exec() method - with patch('PyQt5.QtWidgets.QDialog.exec') as mocked_exec: + with patch('PyQt5.QtWidgets.QDialog.exec'): # WHEN: Add a new slide. QtTest.QTest.mouseClick(self.form.add_button, QtCore.Qt.LeftButton) diff --git a/tests/interfaces/openlp_plugins/custom/forms/test_customslideform.py b/tests/interfaces/openlp_plugins/custom/forms/test_customslideform.py index f7d5abdd7..27fc77fc6 100644 --- a/tests/interfaces/openlp_plugins/custom/forms/test_customslideform.py +++ b/tests/interfaces/openlp_plugins/custom/forms/test_customslideform.py @@ -58,7 +58,7 @@ class TestEditCustomSlideForm(TestCase, TestMixin): Test if the dialog is correctly set up. """ # GIVEN: A mocked QDialog.exec() method - with patch('PyQt5.QtWidgets.QDialog.exec') as mocked_exec: + with patch('PyQt5.QtWidgets.QDialog.exec'): # WHEN: Show the dialog. self.form.exec() @@ -70,7 +70,7 @@ class TestEditCustomSlideForm(TestCase, TestMixin): Test the set_text() method. """ # GIVEN: A mocked QDialog.exec() method - with patch('PyQt5.QtWidgets.QDialog.exec') as mocked_exec: + with patch('PyQt5.QtWidgets.QDialog.exec'): mocked_set_focus = MagicMock() self.form.slide_text_edit.setFocus = mocked_set_focus wanted_text = 'THIS TEXT SHOULD BE SHOWN.' diff --git a/tests/interfaces/openlp_plugins/media/forms/test_mediaclipselectorform.py b/tests/interfaces/openlp_plugins/media/forms/test_mediaclipselectorform.py index 69e98da5d..00df6d3cf 100644 --- a/tests/interfaces/openlp_plugins/media/forms/test_mediaclipselectorform.py +++ b/tests/interfaces/openlp_plugins/media/forms/test_mediaclipselectorform.py @@ -79,7 +79,7 @@ class TestMediaClipSelectorForm(TestCase, TestMixin): Test if the dialog is correctly set up. """ # GIVEN: A mocked QDialog.exec() method - with patch('PyQt5.QtWidgets.QDialog.exec') as mocked_exec: + with patch('PyQt5.QtWidgets.QDialog.exec'): # WHEN: Show the dialog. self.form.exec() @@ -94,7 +94,7 @@ class TestMediaClipSelectorForm(TestCase, TestMixin): with patch('openlp.plugins.media.forms.mediaclipselectorform.critical_error_message_box') as \ mocked_critical_error_message_box,\ patch('openlp.plugins.media.forms.mediaclipselectorform.os.path.exists') as mocked_os_path_exists,\ - patch('PyQt5.QtWidgets.QDialog.exec') as mocked_exec: + patch('PyQt5.QtWidgets.QDialog.exec'): self.form.exec() # WHEN: The load button is clicked with no path set @@ -132,7 +132,7 @@ class TestMediaClipSelectorForm(TestCase, TestMixin): Test the behavior when the title combobox is updated """ # GIVEN: Mocked methods and some entries in the title combobox. - with patch('PyQt5.QtWidgets.QDialog.exec') as mocked_exec: + with patch('PyQt5.QtWidgets.QDialog.exec'): self.form.exec() self.form.vlc_media_player.get_length.return_value = 1000 self.form.audio_tracks_combobox.itemData = MagicMock() @@ -161,7 +161,7 @@ class TestMediaClipSelectorForm(TestCase, TestMixin): # GIVEN: Mocked methods. with patch('openlp.plugins.media.forms.mediaclipselectorform.critical_error_message_box') as \ mocked_critical_error_message_box,\ - patch('PyQt5.QtWidgets.QDialog.exec') as mocked_exec: + patch('PyQt5.QtWidgets.QDialog.exec'): self.form.exec() # WHEN: The save button is clicked with a NoneType in start_time_ms or end_time_ms diff --git a/tests/openlp_core/projectors/test_projector_sourceform.py b/tests/openlp_core/projectors/test_projector_sourceform.py index 65c3eea99..b10a0e0ec 100644 --- a/tests/openlp_core/projectors/test_projector_sourceform.py +++ b/tests/openlp_core/projectors/test_projector_sourceform.py @@ -91,7 +91,7 @@ class ProjectorSourceFormTest(TestCase, TestMixin): if os.path.exists(TEST_DB): os.unlink(TEST_DB) break - except: + except Exception: time.sleep(1) retries += 1 self.destroy_settings()