Browse Source

Add tests for setVariantById

One for when the ID exists, and one for when it doesn't.

Contributes to issue CURA-3497.
Ghostkeeper 8 years ago
parent
commit
fe95755f75
1 changed files with 16 additions and 1 deletions
  1. 16 1
      tests/Settings/TestExtruderStack.py

+ 16 - 1
tests/Settings/TestExtruderStack.py

@@ -338,4 +338,19 @@ def test_setQualityChangesByIdExists(extruder_stack, container_registry):
 #   doesn't exist.
 def test_setQualityChangesByIdDoesntExist(extruder_stack):
     with pytest.raises(KeyError):
-        extruder_stack.setQualityChangesById("some_quality_changes") #Container registry is empty now.
+        extruder_stack.setQualityChangesById("some_quality_changes") #Container registry is empty now.
+
+##  Tests setting variants by specifying an ID of a variant that exists.
+def test_setVariantByIdExists(extruder_stack, container_registry):
+    original_container_registry = UM.Settings.ContainerStack._containerRegistry
+    UM.Settings.ContainerStack._containerRegistry = container_registry #Always has all the profiles you ask of.
+
+    extruder_stack.setVariantById("some_variant") #The container registry always has a container with the ID.
+
+    #Restore.
+    UM.Settings.ContainerStack._containerRegistry = original_container_registry
+
+##  Tests setting variants by specifying an ID of a variant that doesn't exist.
+def test_setVariantByIdDoesntExist(extruder_stack):
+    with pytest.raises(KeyError):
+        extruder_stack.setVariantById("some_variant") #Container registry is empty now.