mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-04-29 23:34:32 +08:00
Expand the qualityManager tests
This commit is contained in:
parent
1d62cc48aa
commit
97758cfc88
@ -1,7 +1,8 @@
|
|||||||
from unittest.mock import MagicMock
|
from unittest.mock import MagicMock, patch
|
||||||
|
|
||||||
import pytest
|
import pytest
|
||||||
|
|
||||||
|
from cura.Machines.QualityChangesGroup import QualityChangesGroup
|
||||||
from cura.Machines.QualityManager import QualityManager
|
from cura.Machines.QualityManager import QualityManager
|
||||||
|
|
||||||
mocked_stack = MagicMock()
|
mocked_stack = MagicMock()
|
||||||
@ -26,6 +27,8 @@ def container_registry():
|
|||||||
{"id": "test_material", "definition": "fdmprinter", "quality_type": "normal", "name": "test_name_material", "material": "base_material", "type": "quality"},
|
{"id": "test_material", "definition": "fdmprinter", "quality_type": "normal", "name": "test_name_material", "material": "base_material", "type": "quality"},
|
||||||
{"id": "quality_changes_id", "definition": "fdmprinter", "type": "quality_changes", "quality_type": "amazing!", "name": "herp"}]
|
{"id": "quality_changes_id", "definition": "fdmprinter", "type": "quality_changes", "quality_type": "amazing!", "name": "herp"}]
|
||||||
result.findContainersMetadata = MagicMock(return_value = mocked_metadata)
|
result.findContainersMetadata = MagicMock(return_value = mocked_metadata)
|
||||||
|
|
||||||
|
result.uniqueName = MagicMock(return_value = "uniqueName")
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
@ -66,4 +69,62 @@ def test_getDefaultQualityType(quality_mocked_application):
|
|||||||
assert manager.getDefaultQualityType(mocked_stack).quality_type == "normal"
|
assert manager.getDefaultQualityType(mocked_stack).quality_type == "normal"
|
||||||
|
|
||||||
|
|
||||||
|
def test_createQualityChanges(quality_mocked_application):
|
||||||
|
manager = QualityManager(quality_mocked_application)
|
||||||
|
mocked_quality_changes = MagicMock()
|
||||||
|
manager._createQualityChanges = MagicMock(return_value = mocked_quality_changes)
|
||||||
|
manager.initialize()
|
||||||
|
container_manager = MagicMock()
|
||||||
|
|
||||||
|
manager._container_registry.addContainer = MagicMock() # Side effect we want to check.
|
||||||
|
with patch("cura.Settings.ContainerManager.ContainerManager.getInstance", container_manager):
|
||||||
|
manager.createQualityChanges("derp")
|
||||||
|
assert manager._container_registry.addContainer.called_once_with(mocked_quality_changes)
|
||||||
|
|
||||||
|
|
||||||
|
def test_renameQualityChangesGroup(quality_mocked_application):
|
||||||
|
manager = QualityManager(quality_mocked_application)
|
||||||
|
manager.initialize()
|
||||||
|
|
||||||
|
mocked_container = MagicMock()
|
||||||
|
|
||||||
|
quality_changes_group = QualityChangesGroup("zomg", "beep")
|
||||||
|
quality_changes_group.getAllNodes = MagicMock(return_value = [mocked_container])
|
||||||
|
|
||||||
|
# We need to check for "uniqueName" instead of "NEWRANDOMNAMEYAY" because the mocked registry always returns
|
||||||
|
# "uniqueName" when attempting to generate an unique name.
|
||||||
|
assert manager.renameQualityChangesGroup(quality_changes_group, "NEWRANDOMNAMEYAY") == "uniqueName"
|
||||||
|
assert mocked_container.setName.called_once_with("uniqueName")
|
||||||
|
|
||||||
|
|
||||||
|
def test_duplicateQualityChangesQualityOnly(quality_mocked_application):
|
||||||
|
manager = QualityManager(quality_mocked_application)
|
||||||
|
manager.initialize()
|
||||||
|
mocked_quality = MagicMock()
|
||||||
|
quality_group = MagicMock()
|
||||||
|
quality_group.getAllNodes = MagicMock(return_value = mocked_quality)
|
||||||
|
mocked_quality_changes = MagicMock()
|
||||||
|
|
||||||
|
# Isolate what we want to test (in this case, we're not interested if createQualityChanges does it's job!)
|
||||||
|
manager._createQualityChanges = MagicMock(return_value = mocked_quality_changes)
|
||||||
|
manager._container_registry.addContainer = MagicMock() # Side effect we want to check.
|
||||||
|
|
||||||
|
manager.duplicateQualityChanges("zomg", {"quality_group": quality_group, "quality_changes_group": None})
|
||||||
|
assert manager._container_registry.addContainer.called_once_with(mocked_quality_changes)
|
||||||
|
|
||||||
|
|
||||||
|
def test_duplicateQualityChanges(quality_mocked_application):
|
||||||
|
manager = QualityManager(quality_mocked_application)
|
||||||
|
manager.initialize()
|
||||||
|
mocked_quality = MagicMock()
|
||||||
|
quality_group = MagicMock()
|
||||||
|
quality_group.getAllNodes = MagicMock(return_value = mocked_quality)
|
||||||
|
quality_changes_group = MagicMock()
|
||||||
|
mocked_quality_changes = MagicMock()
|
||||||
|
quality_changes_group.getAllNodes = MagicMock(return_value=[mocked_quality_changes])
|
||||||
|
mocked_quality_changes.duplicate = MagicMock(return_value = mocked_quality_changes)
|
||||||
|
|
||||||
|
manager._container_registry.addContainer = MagicMock() # Side effect we want to check.
|
||||||
|
|
||||||
|
manager.duplicateQualityChanges("zomg", {"quality_group": quality_group, "quality_changes_group": quality_changes_group})
|
||||||
|
assert manager._container_registry.addContainer.called_once_with(mocked_quality_changes)
|
Loading…
x
Reference in New Issue
Block a user