diff --git a/cura/GlobalStacksModel.py b/cura/GlobalStacksModel.py index 289a03d1c4..afee52e769 100644 --- a/cura/GlobalStacksModel.py +++ b/cura/GlobalStacksModel.py @@ -1,17 +1,13 @@ # Copyright (c) 2018 Ultimaker B.V. # Cura is released under the terms of the LGPLv3 or higher. +from PyQt5.QtCore import pyqtProperty, Qt + from UM.Qt.ListModel import ListModel - -from PyQt5.QtCore import pyqtProperty, Qt, pyqtSignal - from UM.Settings.ContainerRegistry import ContainerRegistry -from UM.Settings.ContainerStack import ContainerStack from cura.PrinterOutputDevice import ConnectionType -from cura.Settings.GlobalStack import GlobalStack - class GlobalStacksModel(ListModel): NameRole = Qt.UserRole + 1 @@ -38,6 +34,8 @@ class GlobalStacksModel(ListModel): ## Handler for container added/removed events from registry def _onContainerChanged(self, container): + from cura.Settings.GlobalStack import GlobalStack # otherwise circular imports + # We only need to update when the added / removed container GlobalStack if isinstance(container, GlobalStack): self._update() diff --git a/plugins/FirmwareUpdateChecker/FirmwareUpdateChecker.py b/plugins/FirmwareUpdateChecker/FirmwareUpdateChecker.py index 13b2e69b63..9c4d498d7e 100644 --- a/plugins/FirmwareUpdateChecker/FirmwareUpdateChecker.py +++ b/plugins/FirmwareUpdateChecker/FirmwareUpdateChecker.py @@ -1,7 +1,6 @@ # Copyright (c) 2018 Ultimaker B.V. # Cura is released under the terms of the LGPLv3 or higher. -import os from PyQt5.QtCore import QUrl from PyQt5.QtGui import QDesktopServices @@ -13,8 +12,6 @@ from UM.Logger import Logger from UM.i18n import i18nCatalog from UM.Settings.ContainerRegistry import ContainerRegistry -from cura.Settings.GlobalStack import GlobalStack - from .FirmwareUpdateCheckerJob import FirmwareUpdateCheckerJob from .FirmwareUpdateCheckerMessage import FirmwareUpdateCheckerMessage @@ -53,6 +50,7 @@ class FirmwareUpdateChecker(Extension): def _onContainerAdded(self, container): # Only take care when a new GlobalStack was added + from cura.Settings.GlobalStack import GlobalStack # otherwise circular imports if isinstance(container, GlobalStack): self.checkFirmwareVersion(container, True) diff --git a/plugins/FirmwareUpdateChecker/tests/TestFirmwareUpdateChecker.py b/plugins/FirmwareUpdateChecker/tests/TestFirmwareUpdateChecker.py index 8cd7083f16..cf61e46d29 100644 --- a/plugins/FirmwareUpdateChecker/tests/TestFirmwareUpdateChecker.py +++ b/plugins/FirmwareUpdateChecker/tests/TestFirmwareUpdateChecker.py @@ -7,8 +7,7 @@ from unittest.mock import MagicMock from UM.Version import Version -from plugins.FirmwareUpdateChecker.FirmwareUpdateCheckerJob import FirmwareUpdateCheckerJob -from plugins.FirmwareUpdateChecker.FirmwareUpdateCheckerLookup import FirmwareUpdateCheckerLookup +import FirmwareUpdateChecker json_data = \ { @@ -44,7 +43,7 @@ json_data = \ ("emmerson", 5), ]) def test_FirmwareUpdateCheckerLookup(id, name): - lookup = FirmwareUpdateCheckerLookup(name, json_data.get(name)) + lookup = FirmwareUpdateChecker.FirmwareUpdateCheckerLookup.FirmwareUpdateCheckerLookup(name, json_data.get(name)) assert lookup.getMachineName() == name assert lookup.getMachineId() == id @@ -58,6 +57,6 @@ def test_FirmwareUpdateCheckerLookup(id, name): ]) def test_FirmwareUpdateCheckerJob_getCurrentVersion(name, version): machine_data = json_data.get(name) - job = FirmwareUpdateCheckerJob(False, name, machine_data, MagicMock) + job = FirmwareUpdateChecker.FirmwareUpdateCheckerJob.FirmwareUpdateCheckerJob(False, name, machine_data, MagicMock) job.getUrlResponse = MagicMock(return_value = str(version)) # Pretend like we got a good response from the server assert job.getCurrentVersion() == version diff --git a/plugins/FirmwareUpdateChecker/tests/__init__.py b/plugins/FirmwareUpdateChecker/tests/__init__.py new file mode 100644 index 0000000000..e69de29bb2