|
@@ -55,6 +55,26 @@ def test_addContainer(extruder_stack):
|
|
|
with pytest.raises(InvalidOperationError):
|
|
|
extruder_stack.addContainer(unittest.mock.MagicMock())
|
|
|
|
|
|
+@pytest.mark.parametrize("filename, definition_id", [
|
|
|
+ ("Left.extruder.cfg", "empty"),
|
|
|
+ ("ExtruderLegacy.stack.cfg", "empty"),
|
|
|
+ ("OnlyDefinition.extruder.cfg", "empty"),
|
|
|
+ ("Complete.extruder.cfg", "some_definition")
|
|
|
+])
|
|
|
+def test_deserializeDefinition(filename, definition_id, container_registry, extruder_stack):
|
|
|
+ serialized = readStack(filename)
|
|
|
+
|
|
|
+ #Mock the loading of the instance containers.
|
|
|
+ extruder_stack.findContainer = findSomeContainers
|
|
|
+ original_container_registry = UM.Settings.ContainerStack._containerRegistry
|
|
|
+ UM.Settings.ContainerStack._containerRegistry = container_registry #Always has all profiles you ask of.
|
|
|
+
|
|
|
+ extruder_stack.deserialize(serialized)
|
|
|
+ assert extruder_stack.definition.getId() == definition_id
|
|
|
+
|
|
|
+ #Restore.
|
|
|
+ UM.Settings.ContainerStack._containerRegistry = original_container_registry
|
|
|
+
|
|
|
@pytest.mark.parametrize("filename, material_id", [
|
|
|
("Left.extruder.cfg", "some_instance"),
|
|
|
("ExtruderLegacy.stack.cfg", "some_instance"),
|