mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-08 23:46:22 -06:00
Use patch.object
to allow relative imports
Issue STAR-322.
This commit is contained in:
parent
b51317b4f3
commit
badb0b0ca9
4 changed files with 19 additions and 16 deletions
|
@ -6,7 +6,7 @@ from unittest import TestCase
|
||||||
from unittest.mock import patch, MagicMock
|
from unittest.mock import patch, MagicMock
|
||||||
|
|
||||||
from cura.UltimakerCloudAuthentication import CuraCloudAPIRoot
|
from cura.UltimakerCloudAuthentication import CuraCloudAPIRoot
|
||||||
from ...src.Cloud.CloudApiClient import CloudApiClient
|
from ...src.Cloud import CloudApiClient
|
||||||
from ...src.Cloud.Models.CloudClusterResponse import CloudClusterResponse
|
from ...src.Cloud.Models.CloudClusterResponse import CloudClusterResponse
|
||||||
from ...src.Cloud.Models.CloudClusterStatus import CloudClusterStatus
|
from ...src.Cloud.Models.CloudClusterStatus import CloudClusterStatus
|
||||||
from ...src.Cloud.Models.CloudPrintJobResponse import CloudPrintJobResponse
|
from ...src.Cloud.Models.CloudPrintJobResponse import CloudPrintJobResponse
|
||||||
|
@ -28,8 +28,8 @@ class TestCloudApiClient(TestCase):
|
||||||
self.account.isLoggedIn.return_value = True
|
self.account.isLoggedIn.return_value = True
|
||||||
|
|
||||||
self.network = NetworkManagerMock()
|
self.network = NetworkManagerMock()
|
||||||
with patch("CloudApiClient.QNetworkAccessManager", return_value = self.network):
|
with patch.object(CloudApiClient, 'QNetworkAccessManager', return_value = self.network):
|
||||||
self.api = CloudApiClient(self.account, self._errorHandler)
|
self.api = CloudApiClient.CloudApiClient(self.account, self._errorHandler)
|
||||||
|
|
||||||
def test_getClusters(self):
|
def test_getClusters(self):
|
||||||
result = []
|
result = []
|
||||||
|
|
|
@ -7,7 +7,7 @@ from unittest.mock import patch, MagicMock
|
||||||
from UM.Scene.SceneNode import SceneNode
|
from UM.Scene.SceneNode import SceneNode
|
||||||
from cura.UltimakerCloudAuthentication import CuraCloudAPIRoot
|
from cura.UltimakerCloudAuthentication import CuraCloudAPIRoot
|
||||||
from cura.PrinterOutput.PrinterOutputModel import PrinterOutputModel
|
from cura.PrinterOutput.PrinterOutputModel import PrinterOutputModel
|
||||||
from ...src.Cloud.CloudApiClient import CloudApiClient
|
from ...src.Cloud import CloudApiClient
|
||||||
from ...src.Cloud.CloudOutputDevice import CloudOutputDevice
|
from ...src.Cloud.CloudOutputDevice import CloudOutputDevice
|
||||||
from ...src.Cloud.Models.CloudClusterResponse import CloudClusterResponse
|
from ...src.Cloud.Models.CloudClusterResponse import CloudClusterResponse
|
||||||
from .Fixtures import readFixture, parseFixture
|
from .Fixtures import readFixture, parseFixture
|
||||||
|
@ -41,19 +41,20 @@ class TestCloudOutputDevice(TestCase):
|
||||||
self.network = NetworkManagerMock()
|
self.network = NetworkManagerMock()
|
||||||
self.account = MagicMock(isLoggedIn=True, accessToken="TestAccessToken")
|
self.account = MagicMock(isLoggedIn=True, accessToken="TestAccessToken")
|
||||||
self.onError = MagicMock()
|
self.onError = MagicMock()
|
||||||
with patch("CloudApiClient.QNetworkAccessManager",
|
with patch.object(CloudApiClient, "QNetworkAccessManager", return_value = self.network):
|
||||||
return_value = self.network):
|
self._api = CloudApiClient.CloudApiClient(self.account, self.onError)
|
||||||
self._api = CloudApiClient(self.account, self.onError)
|
|
||||||
|
|
||||||
self.device = CloudOutputDevice(self._api, self.cluster)
|
self.device = CloudOutputDevice(self._api, self.cluster)
|
||||||
self.cluster_status = parseFixture("getClusterStatusResponse")
|
self.cluster_status = parseFixture("getClusterStatusResponse")
|
||||||
self.network.prepareReply("GET", self.STATUS_URL, 200, readFixture("getClusterStatusResponse"))
|
self.network.prepareReply("GET", self.STATUS_URL, 200, readFixture("getClusterStatusResponse"))
|
||||||
|
|
||||||
def tearDown(self):
|
def tearDown(self):
|
||||||
super().tearDown()
|
try:
|
||||||
self.network.flushReplies()
|
super().tearDown()
|
||||||
for patched_method in self.patches:
|
self.network.flushReplies()
|
||||||
patched_method.stop()
|
finally:
|
||||||
|
for patched_method in self.patches:
|
||||||
|
patched_method.stop()
|
||||||
|
|
||||||
def test_status(self):
|
def test_status(self):
|
||||||
self.device._update()
|
self.device._update()
|
||||||
|
|
|
@ -5,7 +5,8 @@ from unittest.mock import patch, MagicMock
|
||||||
|
|
||||||
from UM.OutputDevice.OutputDeviceManager import OutputDeviceManager
|
from UM.OutputDevice.OutputDeviceManager import OutputDeviceManager
|
||||||
from cura.UltimakerCloudAuthentication import CuraCloudAPIRoot
|
from cura.UltimakerCloudAuthentication import CuraCloudAPIRoot
|
||||||
from ...src.Cloud.CloudOutputDeviceManager import CloudOutputDeviceManager
|
from ...src.Cloud import CloudApiClient
|
||||||
|
from ...src.Cloud import CloudOutputDeviceManager
|
||||||
from .Fixtures import parseFixture, readFixture
|
from .Fixtures import parseFixture, readFixture
|
||||||
from .NetworkManagerMock import NetworkManagerMock, FakeSignal
|
from .NetworkManagerMock import NetworkManagerMock, FakeSignal
|
||||||
|
|
||||||
|
@ -28,9 +29,9 @@ class TestCloudOutputDeviceManager(TestCase):
|
||||||
|
|
||||||
self.network = NetworkManagerMock()
|
self.network = NetworkManagerMock()
|
||||||
self.timer = MagicMock(timeout = FakeSignal())
|
self.timer = MagicMock(timeout = FakeSignal())
|
||||||
with patch("CloudApiClient.QNetworkAccessManager", return_value = self.network), \
|
with patch.object(CloudApiClient, "QNetworkAccessManager", return_value = self.network), \
|
||||||
patch("CloudOutputDeviceManager.QTimer", return_value = self.timer):
|
patch.object(CloudOutputDeviceManager, "QTimer", return_value = self.timer):
|
||||||
self.manager = CloudOutputDeviceManager()
|
self.manager = CloudOutputDeviceManager.CloudOutputDeviceManager()
|
||||||
self.clusters_response = parseFixture("getClusters")
|
self.clusters_response = parseFixture("getClusters")
|
||||||
self.network.prepareReply("GET", self.URL, 200, readFixture("getClusters"))
|
self.network.prepareReply("GET", self.URL, 200, readFixture("getClusters"))
|
||||||
|
|
||||||
|
@ -112,7 +113,7 @@ class TestCloudOutputDeviceManager(TestCase):
|
||||||
|
|
||||||
active_machine_mock.setMetaDataEntry.assert_called_with("um_cloud_cluster_id", cluster2["cluster_id"])
|
active_machine_mock.setMetaDataEntry.assert_called_with("um_cloud_cluster_id", cluster2["cluster_id"])
|
||||||
|
|
||||||
@patch("CloudOutputDeviceManager.Message")
|
@patch.object(CloudOutputDeviceManager, "Message")
|
||||||
def test_api_error(self, message_mock):
|
def test_api_error(self, message_mock):
|
||||||
self.clusters_response = {
|
self.clusters_response = {
|
||||||
"errors": [{"id": "notFound", "title": "Not found!", "http_status": "404", "code": "notFound"}]
|
"errors": [{"id": "notFound", "title": "Not found!", "http_status": "404", "code": "notFound"}]
|
||||||
|
|
|
@ -29,6 +29,7 @@ def where(exe_name: str, search_path: str = os.getenv("PATH")) -> str:
|
||||||
|
|
||||||
|
|
||||||
def findModules(path):
|
def findModules(path):
|
||||||
|
return ["UM3NetworkPrinting"]
|
||||||
result = []
|
result = []
|
||||||
for entry in os.scandir(path):
|
for entry in os.scandir(path):
|
||||||
if entry.is_dir() and os.path.exists(os.path.join(path, entry.name, "__init__.py")):
|
if entry.is_dir() and os.path.exists(os.path.join(path, entry.name, "__init__.py")):
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue