Exemplo n.º 1
0
 def test_status_unreachable(self, mock_get_uri):
     printer = Octoprint(
         "900c73b8-1f12-4027-941a-e4b29531e8e3",
         ip="192.168.1.15",
         client_props={"connected": True},
     )
     result = printer.status()
     self.assertEqual(result, {
         "state": "Printer is not responding",
         "temperature": {}
     })
Exemplo n.º 2
0
 def test_status_conflict(self, mock_get_uri):
     mock_get_uri.return_value.status_code = 409
     printer = Octoprint(
         "900c73b8-1f12-4027-941a-e4b29531e8e3",
         ip="192.168.1.15",
         client_props={"connected": True},
     )
     result = printer.status()
     self.assertEqual(
         result,
         {
             "state": "Printer is not connected to Octoprint",
             "temperature": {}
         },
     )
Exemplo n.º 3
0
 def test_status_malformed_json(self, mock_get_uri):
     mock_get_uri.return_value.status_code = 200
     mock_get_uri.return_value.json.side_effect = json.decoder.JSONDecodeError(
         "msg", "aa", 123)
     printer = Octoprint(
         "900c73b8-1f12-4027-941a-e4b29531e8e3",
         ip="192.168.1.15",
         client_props={"connected": True},
     )
     result = printer.status()
     self.assertEqual(
         result,
         {
             "state": "Printer is responding with invalid data",
             "temperature": {}
         },
     )
Exemplo n.º 4
0
 def test_status_ok(self, mock_get_uri):
     mock_get_uri.return_value.status_code = 200
     mock_get_uri.return_value.json.return_value = {
         "state": {
             "text": "Printing"
         },
         "temperature": {
             "bed": {
                 "actual": 49.8,
                 "offset": 0,
                 "target": 50.0
             },
             "tool0": {
                 "actual": 240.4,
                 "offset": 0,
                 "target": 240.0
             },
         },
     }
     printer = Octoprint(
         "900c73b8-1f12-4027-941a-e4b29531e8e3",
         ip="192.168.1.15",
         client_props={"connected": True},
     )
     result = printer.status()
     self.assertEqual(
         result,
         {
             "state": "Printing",
             "temperature": {
                 "bed": {
                     "actual": 49.8,
                     "offset": 0,
                     "target": 50.0
                 },
                 "tool0": {
                     "actual": 240.4,
                     "offset": 0,
                     "target": 240.0
                 },
             },
         },
     )
Exemplo n.º 5
0
 def test_status_protected(self, mock_get_uri):
     mock_get_uri.return_value.status_code = 403
     printer = Octoprint(
         "900c73b8-1f12-4027-941a-e4b29531e8e3",
         ip="192.168.1.15",
         client_props={
             "connected": True,
             "api_key": "1234",
             "access_level": PrinterClientAccessLevel.UNLOCKED,
         },
     )
     self.assertEqual(printer.client_info.access_level,
                      PrinterClientAccessLevel.UNLOCKED)
     result = printer.status()
     self.assertEqual(result, {
         "state": "Printer is not responding",
         "temperature": {}
     })
     self.assertEqual(printer.client_info.access_level,
                      PrinterClientAccessLevel.PROTECTED)
Exemplo n.º 6
0
 def test_status_disconnected(self, mock_get_uri):
     printer = Octoprint("900c73b8-1f12-4027-941a-e4b29531e8e3",
                         ip="192.168.1.15")
     printer.status()
     self.assertEqual(mock_get_uri.call_count, 0)