|
@@ -3,6 +3,8 @@ from unittest.mock import MagicMock
|
|
|
import pytest
|
|
|
from unittest.mock import patch
|
|
|
|
|
|
+from cura.PrinterOutput.Models.ExtruderConfigurationModel import ExtruderConfigurationModel
|
|
|
+from cura.PrinterOutput.Models.MaterialOutputModel import MaterialOutputModel
|
|
|
from cura.PrinterOutput.Models.PrinterConfigurationModel import PrinterConfigurationModel
|
|
|
from cura.PrinterOutput.Models.PrinterOutputModel import PrinterOutputModel
|
|
|
from cura.PrinterOutput.PrinterOutputDevice import PrinterOutputDevice
|
|
@@ -61,4 +63,19 @@ def test_uniqueConfigurations(printer_output_device):
|
|
|
# Once the type of printer is set, it's active configuration counts as being set.
|
|
|
# In that case, that should also be added to the list of available configurations
|
|
|
printer.updateType("blarg!")
|
|
|
- assert printer_output_device.uniqueConfigurations == [configuration, printer.printerConfiguration]
|
|
|
+ assert printer_output_device.uniqueConfigurations == [configuration, printer.printerConfiguration]
|
|
|
+
|
|
|
+
|
|
|
+def test_uniqueConfigurations_empty_is_filtered_out(printer_output_device):
|
|
|
+ printer = PrinterOutputModel(MagicMock())
|
|
|
+ # Add a printer and fire the signal that ensures they get hooked up correctly.
|
|
|
+ printer_output_device._printers = [printer]
|
|
|
+ printer_output_device._onPrintersChanged()
|
|
|
+
|
|
|
+ empty_material = MaterialOutputModel(guid = "", type = "empty", color = "empty", brand = "Generic", name = "Empty")
|
|
|
+ empty_left_extruder = ExtruderConfigurationModel(0)
|
|
|
+ empty_left_extruder.setMaterial(empty_material)
|
|
|
+ empty_right_extruder = ExtruderConfigurationModel(1)
|
|
|
+ empty_right_extruder.setMaterial(empty_material)
|
|
|
+ printer.printerConfiguration.setExtruderConfigurations([empty_left_extruder, empty_right_extruder])
|
|
|
+ assert printer_output_device.uniqueConfiguration == []
|