From f12ffad2c1f47ef9be579252851fc546ecf9805f Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 10 Apr 2017 17:12:27 +0200 Subject: [PATCH] Add test for moving definition containers When a definition container is in the wrong spot in a stack file it needs to be moved to the definition slot. Contributes to issue CURA-3497. --- tests/Settings/TestGlobalStack.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/tests/Settings/TestGlobalStack.py b/tests/Settings/TestGlobalStack.py index 0830fa4daf..58aba31b74 100644 --- a/tests/Settings/TestGlobalStack.py +++ b/tests/Settings/TestGlobalStack.py @@ -345,6 +345,17 @@ def test_deserializeMoveInstanceContainer(global_stack): assert global_stack.quality.getId() == "empty" assert global_stack.material.getId() != "empty" +## Tests whether a definition container in the wrong spot is moved into the +# correct spot by deserialising. +def test_deserializeMoveDefinitionContainer(global_stack): + global_stack._containers[cura.Settings.CuraContainerStack._ContainerIndexes.Material] = DefinitionContainer(container_id = "some definition") #Not in the correct spot. + + with unittest.mock.patch("UM.Settings.ContainerStack.ContainerStack.deserialize", unittest.mock.MagicMock()): #Prevent calling super().deserialize. + global_stack.deserialize("") + + assert global_stack.material.getId() == "empty" + assert global_stack.definition.getId() != "empty" + ## Tests whether the user changes are being read properly from a global stack. @pytest.mark.skip @pytest.mark.parametrize("filename, user_changes_id", [