mirror of
https://github.com/fergalmoran/picard.git
synced 2026-01-06 08:34:01 +00:00
PICARD-1926: Adjust test cases for new config structure
This commit is contained in:
@@ -201,7 +201,7 @@ class CommonTests:
|
||||
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
config.setting = settings.copy()
|
||||
self.set_config_values(settings)
|
||||
if self.testfile:
|
||||
_name, self.testfile_ext = os.path.splitext(self.testfile)
|
||||
self.testfile_path = os.path.join('test', 'data', self.testfile)
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
# Picard, the next-generation MusicBrainz tagger
|
||||
#
|
||||
# Copyright (C) 2018 Wieland Hoffmann
|
||||
# Copyright (C) 2019 Philipp Wolfer
|
||||
# Copyright (C) 2019-2020 Philipp Wolfer
|
||||
# Copyright (C) 2020 Laurent Monin
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
@@ -29,7 +29,9 @@ from tempfile import (
|
||||
mkdtemp,
|
||||
mkstemp,
|
||||
)
|
||||
import threading
|
||||
import unittest
|
||||
from unittest.mock import Mock
|
||||
|
||||
from PyQt5 import QtCore
|
||||
|
||||
@@ -72,7 +74,28 @@ class PicardTestCase(unittest.TestCase):
|
||||
self.tagger = FakeTagger()
|
||||
QtCore.QObject.tagger = self.tagger
|
||||
self.addCleanup(self.tagger.run_cleanup)
|
||||
config.setting = {}
|
||||
self.init_config()
|
||||
|
||||
@staticmethod
|
||||
def init_config():
|
||||
fake_config = Mock()
|
||||
fake_config.setting = {}
|
||||
fake_config.persist = {}
|
||||
# Make config object available to current thread
|
||||
config._thread_configs[threading.get_ident()] = fake_config
|
||||
# Make config object available for legacy use
|
||||
config.config = fake_config
|
||||
config.setting = fake_config.setting
|
||||
config.persist = fake_config.persist
|
||||
|
||||
@staticmethod
|
||||
def set_config_values(setting=None, persist=None):
|
||||
if setting:
|
||||
for key, value in setting.items():
|
||||
config.config.setting[key] = value
|
||||
if persist:
|
||||
for key, value in persist.items():
|
||||
config.config.persist[key] = value
|
||||
|
||||
def mktmpdir(self, ignore_errors=False):
|
||||
tmpdir = mkdtemp(suffix=self.__class__.__name__)
|
||||
|
||||
@@ -27,7 +27,6 @@ import os
|
||||
|
||||
from test.picardtestcase import PicardTestCase
|
||||
|
||||
from picard import config
|
||||
from picard.acoustid.json_helpers import parse_recording
|
||||
from picard.mbjson import recording_to_metadata
|
||||
from picard.metadata import Metadata
|
||||
@@ -49,7 +48,7 @@ class AcoustIDTest(PicardTestCase):
|
||||
self.init_test(self.filename)
|
||||
|
||||
def init_test(self, filename):
|
||||
config.setting = settings.copy()
|
||||
self.set_config_values(settings)
|
||||
self.json_doc = None
|
||||
with open(os.path.join('test', 'data', 'ws_data', filename), encoding='utf-8') as f:
|
||||
self.json_doc = json.load(f)
|
||||
|
||||
@@ -27,7 +27,6 @@ from unittest.mock import (
|
||||
|
||||
from test.picardtestcase import PicardTestCase
|
||||
|
||||
from picard import config
|
||||
from picard.acoustid.manager import AcoustIDManager
|
||||
from picard.file import File
|
||||
|
||||
@@ -55,10 +54,10 @@ def dummy_file(i):
|
||||
class AcoustIDManagerTest(PicardTestCase):
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
config.setting = {
|
||||
self.set_config_values({
|
||||
"clear_existing_tags": False,
|
||||
"compare_ignore_tags": []
|
||||
}
|
||||
})
|
||||
self.mock_api_helper = MagicMock()
|
||||
self.mock_api_helper.submit_acoustid_fingerprints = Mock(wraps=mock_succeed_submission)
|
||||
self.acoustidmanager = AcoustIDManager(self.mock_api_helper)
|
||||
|
||||
@@ -26,7 +26,6 @@ from unittest.mock import MagicMock
|
||||
|
||||
from test.picardtestcase import PicardTestCase
|
||||
|
||||
from picard import config
|
||||
from picard.webservice import WebService
|
||||
from picard.webservice.api_helpers import (
|
||||
APIHelper,
|
||||
@@ -72,8 +71,9 @@ class APITest(PicardTestCase):
|
||||
class MBAPITest(PicardTestCase):
|
||||
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
self.config = {'server_host': "mb.org", "server_port": 443}
|
||||
config.setting = self.config.copy()
|
||||
self.set_config_values(self.config)
|
||||
self.ws = MagicMock(auto_spec=WebService)
|
||||
self.api = MBAPIHelper(self.ws)
|
||||
|
||||
|
||||
@@ -171,7 +171,7 @@ class FileNamingTest(PicardTestCase):
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
self.file = File('/somepath/somefile.mp3')
|
||||
config.setting = {
|
||||
self.set_config_values({
|
||||
'ascii_filenames': False,
|
||||
'clear_existing_tags': False,
|
||||
'enabled_plugins': [],
|
||||
@@ -180,7 +180,7 @@ class FileNamingTest(PicardTestCase):
|
||||
'move_files': False,
|
||||
'rename_files': False,
|
||||
'windows_compatibility': True,
|
||||
}
|
||||
})
|
||||
self.metadata = Metadata({
|
||||
'album': 'somealbum',
|
||||
'title': 'sometitle',
|
||||
|
||||
@@ -46,7 +46,7 @@ class TestFileSystem(PicardTestCase):
|
||||
super().setUp()
|
||||
self.src_directory = self.mktmpdir()
|
||||
self.tgt_directory = self.mktmpdir()
|
||||
config.setting = settings.copy()
|
||||
self.set_config_values(settings)
|
||||
|
||||
def _prepare_files(self, src_rel_path='', tgt_rel_path=''):
|
||||
"""Prepare src files and tgt filenames for a test."""
|
||||
|
||||
@@ -47,7 +47,7 @@ settings = {
|
||||
class InterfaceColorsTest(PicardTestCase):
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
config.setting = settings.copy()
|
||||
self.set_config_values(settings)
|
||||
|
||||
def test_interface_colors(self):
|
||||
for key in ('interface_colors', 'interface_colors_dark'):
|
||||
|
||||
@@ -64,7 +64,7 @@ class MBJSONTest(PicardTestCase):
|
||||
self.init_test(self.filename)
|
||||
|
||||
def init_test(self, filename):
|
||||
config.setting = settings.copy()
|
||||
self.set_config_values(settings)
|
||||
self.json_doc = load_test_json(filename)
|
||||
|
||||
|
||||
|
||||
@@ -29,7 +29,6 @@ from test.picardtestcase import (
|
||||
)
|
||||
from test.test_coverart_image import create_image
|
||||
|
||||
from picard import config
|
||||
from picard.cluster import Cluster
|
||||
from picard.coverart.image import CoverArtImage
|
||||
from picard.file import File
|
||||
@@ -74,7 +73,7 @@ class CommonTests:
|
||||
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
config.setting = settings.copy()
|
||||
self.set_config_values(settings)
|
||||
self.metadata = self.get_metadata_object()
|
||||
self.metadata.length = 242
|
||||
self.metadata["single1"] = "single1-value"
|
||||
|
||||
@@ -31,7 +31,6 @@ from test.picardtestcase import (
|
||||
load_test_json,
|
||||
)
|
||||
|
||||
from picard import config
|
||||
from picard.i18n import setup_gettext
|
||||
from picard.releasegroup import ReleaseGroup
|
||||
|
||||
@@ -54,7 +53,7 @@ class ReleaseTest(PicardTestCase):
|
||||
setup_gettext(self.localedir, 'C')
|
||||
|
||||
def test_1(self):
|
||||
config.setting = settings.copy()
|
||||
self.set_config_values(settings)
|
||||
rlist = load_test_json('release_group_2.json')
|
||||
r = ReleaseGroup(1)
|
||||
r._parse_versions(rlist)
|
||||
@@ -66,7 +65,7 @@ class ReleaseTest(PicardTestCase):
|
||||
'5 / 2009 / GB / CD / label A / cat 123 / Digipak / specialx')
|
||||
|
||||
def test_2(self):
|
||||
config.setting = settings.copy()
|
||||
self.set_config_values(settings)
|
||||
rlist = load_test_json('release_group_3.json')
|
||||
r = ReleaseGroup(1)
|
||||
r._parse_versions(rlist)
|
||||
@@ -76,7 +75,7 @@ class ReleaseTest(PicardTestCase):
|
||||
'5 / 2011 / FR / CD / label A / cat 123')
|
||||
|
||||
def test_3(self):
|
||||
config.setting = settings.copy()
|
||||
self.set_config_values(settings)
|
||||
rlist = load_test_json('release_group_4.json')
|
||||
r = ReleaseGroup(1)
|
||||
r._parse_versions(rlist)
|
||||
|
||||
@@ -37,7 +37,6 @@ from unittest.mock import MagicMock
|
||||
|
||||
from test.picardtestcase import PicardTestCase
|
||||
|
||||
from picard import config
|
||||
from picard.cluster import Cluster
|
||||
from picard.const import DEFAULT_FILE_NAMING_FORMAT
|
||||
from picard.metadata import (
|
||||
@@ -106,9 +105,9 @@ class ScriptParserTest(PicardTestCase):
|
||||
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
config.setting = {
|
||||
self.set_config_values({
|
||||
'enabled_plugins': '',
|
||||
}
|
||||
})
|
||||
|
||||
self.parser = ScriptParser()
|
||||
|
||||
|
||||
@@ -53,7 +53,7 @@ class ScriptToFilenameTest(PicardTestCase):
|
||||
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
config.setting = settings.copy()
|
||||
self.set_config_values(settings)
|
||||
|
||||
def test_plain_filename(self):
|
||||
metadata = Metadata()
|
||||
|
||||
@@ -28,8 +28,8 @@ from picard.util.settingsoverride import SettingsOverride
|
||||
class SettingsOverrideTest(PicardTestCase):
|
||||
|
||||
def setUp(self):
|
||||
self.config = {'key1': 'origval1', 'key2': 'origval2'}
|
||||
config.setting = self.config.copy()
|
||||
super().setUp()
|
||||
self.set_config_values({'key1': 'origval1', 'key2': 'origval2'})
|
||||
self.new_settings = {'key1': 'newval2'}
|
||||
|
||||
def test_read_orig_settings(self):
|
||||
|
||||
@@ -388,6 +388,7 @@ SimMatchTest = namedtuple('SimMatchTest', 'similarity name')
|
||||
class SortBySimilarity(PicardTestCase):
|
||||
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
self.test_values = [
|
||||
SimMatchTest(similarity=0.74, name='d'),
|
||||
SimMatchTest(similarity=0.61, name='a'),
|
||||
@@ -435,6 +436,7 @@ class GetQtEnum(PicardTestCase):
|
||||
class LimitedJoin(PicardTestCase):
|
||||
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
self.list = [str(x) for x in range(0, 10)]
|
||||
|
||||
def test_1(self):
|
||||
|
||||
@@ -55,17 +55,13 @@ class WebServiceTest(PicardTestCase):
|
||||
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
config.setting = {
|
||||
self.set_config_values({
|
||||
'use_proxy': False,
|
||||
'server_host': '',
|
||||
'network_transfer_timeout_seconds': 30,
|
||||
}
|
||||
})
|
||||
self.ws = WebService()
|
||||
|
||||
def tearDown(self):
|
||||
del self.ws
|
||||
config.setting = {}
|
||||
|
||||
@patch.object(WebService, 'add_task')
|
||||
def test_webservice_method_calls(self, mock_add_task):
|
||||
host = "abc.xyz"
|
||||
@@ -97,20 +93,16 @@ class WebServiceTaskTest(PicardTestCase):
|
||||
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
config.setting = {
|
||||
self.set_config_values({
|
||||
'use_proxy': False,
|
||||
'network_transfer_timeout_seconds': 30,
|
||||
}
|
||||
})
|
||||
self.ws = WebService()
|
||||
|
||||
# Patching the QTimers since they can only be started in a QThread
|
||||
self.ws._timer_run_next_task = MagicMock()
|
||||
self.ws._timer_count_pending_requests = MagicMock()
|
||||
|
||||
def tearDown(self):
|
||||
del self.ws
|
||||
config.setting = {}
|
||||
|
||||
def test_add_task(self):
|
||||
|
||||
mock_timer1 = self.ws._timer_run_next_task
|
||||
@@ -215,10 +207,7 @@ class WebServiceProxyTest(PicardTestCase):
|
||||
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
config.setting = PROXY_SETTINGS.copy()
|
||||
|
||||
def tearDown(self):
|
||||
config.setting = {}
|
||||
self.set_config_values(PROXY_SETTINGS)
|
||||
|
||||
def test_proxy_setup(self):
|
||||
proxy_types = [
|
||||
|
||||
Reference in New Issue
Block a user