Add tests for setMaterialById

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

Contributes to issue CURA-3497.
This commit is contained in:
Ghostkeeper 2017-03-24 17:46:59 +01:00
parent e4952ac8c5
commit eb7035db45
No known key found for this signature in database
GPG key ID: C5F96EE2BC0F7E75

View file

@ -290,4 +290,20 @@ def test_setDefinitionByIdExists(extruder_stack, container_registry):
# exist.
def test_setDefinitionByIdDoesntExist(extruder_stack):
with pytest.raises(KeyError):
extruder_stack.setDefinitionById("some_definition") #Container registry is empty now.
extruder_stack.setDefinitionById("some_definition") #Container registry is empty now.
## Tests setting materials by specifying an ID of a material that exists.
def test_setMaterialByIdExists(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.setMaterialById("some_material") #The container registry always has a container with the ID.
#Restore.
UM.Settings.ContainerStack._containerRegistry = original_container_registry
## Tests setting materials by specifying an ID of a material that doesn't
# exist.
def test_setMaterialByIdDoesntExist(extruder_stack):
with pytest.raises(KeyError):
extruder_stack.setMaterialById("some_material") #Container registry is empty now.