Fix circular import issues for tests

This commit is contained in:
DarkPhoenix
2019-11-12 14:59:43 +03:00
parent a91efb681f
commit 2a2d9d3456
6 changed files with 25 additions and 17 deletions

View File

@@ -40,6 +40,7 @@ logging_setup = None
cipher = None
clientHash = None
experimentalFeatures = None
version = None
ESI_CACHE = 'esi_cache'

View File

@@ -33,12 +33,17 @@ pyfalog = Logger(__name__)
class BitmapLoader:
try:
archive = zipfile.ZipFile(config.imgsZIP, 'r')
pyfalog.info("Using zipped image files.")
except (IOError, TypeError):
# Can be None if we're running from tests
if config.imgsZIP is None:
pyfalog.info("Using local image files.")
archive = None
else:
try:
archive = zipfile.ZipFile(config.imgsZIP, 'r')
pyfalog.info("Using zipped image files.")
except (IOError, TypeError):
pyfalog.info("Using local image files.")
archive = None
cached_bitmaps = OrderedDict()
dont_use_cached_bitmaps = False

View File

@@ -24,7 +24,7 @@ import yaml
from .jargon import Jargon
from .resources import DEFAULT_DATA, DEFAULT_HEADER
JARGON_PATH = os.path.join(config.savePath, 'jargon.yaml')
JARGON_PATH = os.path.join(config.savePath, 'jargon.yaml') if config.savePath is not None else None
class JargonLoader:
@@ -44,14 +44,15 @@ class JargonLoader:
def _load_jargon(self):
jargondata = yaml.load(DEFAULT_DATA, Loader=yaml.SafeLoader)
with open(JARGON_PATH) as f:
userdata = yaml.load(f, Loader=yaml.SafeLoader)
jargondata.update(userdata)
if JARGON_PATH is not None:
with open(JARGON_PATH) as f:
userdata = yaml.load(f, Loader=yaml.SafeLoader)
jargondata.update(userdata)
self.jargon_mtime = self._get_jargon_file_mtime()
self._jargon = Jargon(jargondata)
def _get_jargon_file_mtime(self) -> int:
if not os.path.exists(self.jargon_path):
if self.jargon_path is None or not os.path.exists(self.jargon_path):
return 0
return os.stat(self.jargon_path).st_mtime
@@ -82,4 +83,5 @@ class JargonLoader:
return JargonLoader._instance
JargonLoader.init_user_jargon(JARGON_PATH)
if JARGON_PATH is not None:
JargonLoader.init_user_jargon(JARGON_PATH)

View File

@@ -5,7 +5,7 @@ from numbers import Number
from logbook import Logger
import eos.db
from config import version as pyfaVersion
from config import getVersion
from service.fit import Fit
from service.market import Market
from eos.const import FittingModuleState, FittingHardpoint, FittingSlot
@@ -23,6 +23,7 @@ from gui.fitCommands.helpers import ModuleInfo
pyfalog = Logger(__name__)
pyfaVersion = getVersion()
class EfsPort:

View File

@@ -5,7 +5,8 @@ import sys
script_dir = os.path.dirname(os.path.abspath(__file__))
sys.path.append(os.path.realpath(os.path.join(script_dir, '..', '..', '..')))
# noinspection PyPackageRequirements
# This import is here to hack around circular import issues
import gui.mainFrame
# noinspection PyPackageRequirements
from service.fit import Fit

View File

@@ -9,17 +9,15 @@ import os
import sys
# nopep8
import re
# from utils.strfunctions import sequential_rep, replace_ltgt
#from utils.stopwatch import Stopwatch
script_dir = os.path.dirname(os.path.abspath(__file__))
sys.path.append(os.path.realpath(os.path.join(script_dir, '..')))
sys._called_from_test = True # need db open for tests. (see eos/config.py#17
# This import is here to hack around circular import issues
import gui.mainFrame
# noinspection PyPep8
from service.port import Port, IPortUser
#
# noinspection PyPackageRequirements
# from _development.helpers import DBInMemory as DB
"""
NOTE: