mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-07 23:17:32 -06:00
Add some tests for DiscoveredPrintersModel
This commit is contained in:
parent
7e76505464
commit
54ffcc478c
1 changed files with 36 additions and 1 deletions
|
@ -2,13 +2,17 @@ from unittest.mock import MagicMock, PropertyMock
|
||||||
|
|
||||||
import pytest
|
import pytest
|
||||||
|
|
||||||
from cura.Machines.Models.DiscoveredPrintersModel import DiscoveredPrintersModel
|
from cura.Machines.Models.DiscoveredPrintersModel import DiscoveredPrintersModel, DiscoveredPrinter
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture()
|
@pytest.fixture()
|
||||||
def discovered_printer_model(application) -> DiscoveredPrintersModel:
|
def discovered_printer_model(application) -> DiscoveredPrintersModel:
|
||||||
return DiscoveredPrintersModel(application)
|
return DiscoveredPrintersModel(application)
|
||||||
|
|
||||||
|
@pytest.fixture()
|
||||||
|
def discovered_printer() -> DiscoveredPrinter:
|
||||||
|
return DiscoveredPrinter("127.0.0.1", "zomg", "yay", None, "bleep", MagicMock())
|
||||||
|
|
||||||
|
|
||||||
def test_discoveredPrinters(discovered_printer_model):
|
def test_discoveredPrinters(discovered_printer_model):
|
||||||
mocked_device = MagicMock()
|
mocked_device = MagicMock()
|
||||||
|
@ -23,6 +27,37 @@ def test_discoveredPrinters(discovered_printer_model):
|
||||||
|
|
||||||
assert len(discovered_printer_model.discoveredPrinters) == 1
|
assert len(discovered_printer_model.discoveredPrinters) == 1
|
||||||
|
|
||||||
|
discovered_printer_model.discoveredPrintersChanged = MagicMock()
|
||||||
# Test if removing it works
|
# Test if removing it works
|
||||||
discovered_printer_model.removeDiscoveredPrinter("ip")
|
discovered_printer_model.removeDiscoveredPrinter("ip")
|
||||||
assert len(discovered_printer_model.discoveredPrinters) == 0
|
assert len(discovered_printer_model.discoveredPrinters) == 0
|
||||||
|
assert discovered_printer_model.discoveredPrintersChanged.emit.call_count == 1
|
||||||
|
# Removing it again shouldn't cause another signal emit
|
||||||
|
discovered_printer_model.removeDiscoveredPrinter("ip")
|
||||||
|
assert discovered_printer_model.discoveredPrintersChanged.emit.call_count == 1
|
||||||
|
|
||||||
|
test_validate_data_get_set = [
|
||||||
|
{"attribute": "name", "value": "zomg"},
|
||||||
|
{"attribute": "machineType", "value": "BHDHAHHADAD"},
|
||||||
|
]
|
||||||
|
|
||||||
|
@pytest.mark.parametrize("data", test_validate_data_get_set)
|
||||||
|
def test_getAndSet(data, discovered_printer):
|
||||||
|
# Attempt to set the value
|
||||||
|
# Convert the first letter into a capital
|
||||||
|
attribute = list(data["attribute"])
|
||||||
|
attribute[0] = attribute[0].capitalize()
|
||||||
|
attribute = "".join(attribute)
|
||||||
|
|
||||||
|
# Attempt to set the value
|
||||||
|
getattr(discovered_printer, "set" + attribute)(data["value"])
|
||||||
|
|
||||||
|
# Ensure that the value got set
|
||||||
|
assert getattr(discovered_printer, data["attribute"]) == data["value"]
|
||||||
|
|
||||||
|
|
||||||
|
def test_isHostofGroup(discovered_printer):
|
||||||
|
discovered_printer.device.clusterSize = 0
|
||||||
|
assert not discovered_printer.isHostOfGroup
|
||||||
|
discovered_printer.device.clusterSize = 2
|
||||||
|
assert discovered_printer.isHostOfGroup
|
Loading…
Add table
Add a link
Reference in a new issue