From 1ac5df200378a63ddbbd3794af56781afb3bf3a7 Mon Sep 17 00:00:00 2001
From: Trishna Saeharaseelan <trishna.saeharaseelan@noc.ac.uk>
Date: Thu, 26 Jan 2023 16:19:24 +0800
Subject: [PATCH] fix: lint & black

---
 formats/mission_plan.py    |   7 ++-
 formats/platform_status.py |   4 +-
 generate_schema_config.py  |  17 +++---
 tests/fixtures/schemas.py  |   9 ++-
 tests/test_schemas.py      | 112 +++++++++++++++++++++++++++++--------
 5 files changed, 113 insertions(+), 36 deletions(-)

diff --git a/formats/mission_plan.py b/formats/mission_plan.py
index 1d3b21e..b1c4116 100644
--- a/formats/mission_plan.py
+++ b/formats/mission_plan.py
@@ -86,5 +86,10 @@ mission_plan_schema = {
             "items": action_schema,
         },
     },
-    "required": ["message_type", "autonomy_engine_plan_ID", "platform_ID", "plan"],
+    "required": [
+        "message_type",
+        "autonomy_engine_plan_ID",
+        "platform_ID",
+        "plan",
+    ],
 }
diff --git a/formats/platform_status.py b/formats/platform_status.py
index 4501570..2ef5560 100644
--- a/formats/platform_status.py
+++ b/formats/platform_status.py
@@ -59,11 +59,11 @@ platform_status_schema = {
             "example": "2022-12-21T00:00:00Z",
         },
         "platform_state": {
-            "type": "string",  # TODO: Define enum with potential STATES of each platform
+            "type": "string",
             "description": "Current state executed by platform. E.g. "
             + "STOP, IDLE, ABORT.",
             "example": "ABORT",
-        },
+        },  # TODO: Define enum with potential STATES of each platform
         "autonomy_engine_plan_ID": {
             "type": "integer",
             "description": "Last mission plan ID (according to Autonomy"
diff --git a/generate_schema_config.py b/generate_schema_config.py
index 8cf02b6..2c1c838 100644
--- a/generate_schema_config.py
+++ b/generate_schema_config.py
@@ -31,7 +31,9 @@ swagger_config = {
         "schemas": {
             "MESSAGE": {
                 "type": "object",
-                "description": "Full message definition with message-metadata in `header` and different message type schemas under `payload`",
+                "description": "Full message definition with"
+                + " message-metadata in `header` and different"
+                + " message type schemas under `payload`",
                 "properties": {
                     "header": {
                         "$ref": "#/components/schemas/header",
@@ -46,17 +48,18 @@ swagger_config = {
                     "mapping": {
                         "mission_plan": "#/components/schemas/mission_plan",
                         "observation": "#/components/schemas/observation",
-                        "planning_configuration": "#/components/schemas/planning_configuration",
+                        "planning_configuration": "#/components/schemas/"
+                        + "planning_configuration",
                         "platform_status": "#/components/schemas/platform_status",
                         "acknowledgement": "#/components/schemas/acknowledgement",
                     },
                 },
                 "oneOf": [
-                    {"$ref": "#/components/schemas/" + "acknowledgement"},
-                    {"$ref": "#/components/schemas/" + "mission_plan"},
-                    {"$ref": "#/components/schemas/" + "observation"},
-                    {"$ref": "#/components/schemas/" + "planning_configuration"},
-                    {"$ref": "#/components/schemas/" + "platform_status"},
+                    {"$ref": "#/components/schemas/acknowledgement"},
+                    {"$ref": "#/components/schemas/mission_plan"},
+                    {"$ref": "#/components/schemas/observation"},
+                    {"$ref": "#/components/schemas/planning_configuration"},
+                    {"$ref": "#/components/schemas/platform_status"},
                 ],
             },
             "header": message_header,
diff --git a/tests/fixtures/schemas.py b/tests/fixtures/schemas.py
index 2d4ff05..d9633d1 100644
--- a/tests/fixtures/schemas.py
+++ b/tests/fixtures/schemas.py
@@ -158,7 +158,12 @@ mission_plan_schema = {
             "items": action_schema,
         },
     },
-    "required": ["message_type", "autonomy_engine_plan_ID", "platform_ID", "plan"],
+    "required": [
+        "message_type",
+        "autonomy_engine_plan_ID",
+        "platform_ID",
+        "plan",
+    ],
 }
 
 
@@ -460,7 +465,7 @@ platform_status_schema = {
             "example": "2022-12-21T00:00:00Z",
         },
         "platform_state": {
-            "type": "string",  # TODO: Define enum with potential STATES of each platform
+            "type": "string",
             "description": "Current state executed by platform. E.g. "
             + "STOP, IDLE, ABORT.",
             "example": "ABORT",
diff --git a/tests/test_schemas.py b/tests/test_schemas.py
index a2942e1..bf8478d 100644
--- a/tests/test_schemas.py
+++ b/tests/test_schemas.py
@@ -1,11 +1,7 @@
-from openapi_spec_validator import openapi_v30_spec_validator, openapi_v3_spec_validator
+from openapi_spec_validator import openapi_v30_spec_validator
 from openapi_spec_validator.readers import read_from_filename
 from openapi_schema_validator import validate
 from jsonschema import FormatChecker
-from jsonschema import validate
-
-import unittest
-
 from tests.fixtures.schemas import (
     acknowledgement_schema,
     message_header,
@@ -14,6 +10,7 @@ from tests.fixtures.schemas import (
     platform_status_schema,
     mission_plan_schema,
 )
+import unittest
 import json
 
 
@@ -37,21 +34,35 @@ class TestSchema(unittest.TestCase):
             mock_data = json.load(f)
             header_data = mock_data["header"]
             payload_data = mock_data["payload"]
-            self.assertIsNone(validate(header_data, message_header, format_checker=FormatChecker()))
+            self.assertIsNone(
+                validate(
+                    header_data,
+                    message_header,
+                    format_checker=FormatChecker(),
+                )
+            )
             if item == "acknowledgement":
                 self.assertIsNone(
                     validate(
-                        payload_data, acknowledgement_schema, format_checker=FormatChecker()
+                        payload_data,
+                        acknowledgement_schema,
+                        format_checker=FormatChecker(),
                     )
                 )
             elif item == "mission_plan":
                 self.assertIsNone(
-                    validate(payload_data, mission_plan_schema, format_checker=FormatChecker())
+                    validate(
+                        payload_data,
+                        mission_plan_schema,
+                        format_checker=FormatChecker(),
+                    )
                 )
             elif item == "platform_status":
                 self.assertIsNone(
                     validate(
-                        payload_data, platform_status_schema, format_checker=FormatChecker()
+                        payload_data,
+                        platform_status_schema,
+                        format_checker=FormatChecker(),
                     )
                 )
 
@@ -65,7 +76,13 @@ class TestSchema(unittest.TestCase):
             mock_data = json.load(f)
             header_data = mock_data["header"]
             payload_data = mock_data["payload"]
-            self.assertIsNone(validate(header_data, message_header, format_checker=FormatChecker()))
+            self.assertIsNone(
+                validate(
+                    header_data,
+                    message_header,
+                    format_checker=FormatChecker(),
+                )
+            )
             if item == "planning_configuration":
                 self.assertIsNone(
                     validate(
@@ -90,26 +107,44 @@ class TestSchema(unittest.TestCase):
             mock_data = json.load(f)
             header_data = mock_data["header"]
             payload_data = mock_data["payload"]
-            self.assertIsNone(validate(header_data, message_header, format_checker=FormatChecker()))
+            self.assertIsNone(
+                validate(
+                    header_data,
+                    message_header,
+                    format_checker=FormatChecker(),
+                )
+            )
             if item == "platform_status-from_usbl_example.json":
                 self.assertIsNone(
                     validate(
-                        payload_data, platform_status_schema, format_checker=FormatChecker()
+                        payload_data,
+                        platform_status_schema,
+                        format_checker=FormatChecker(),
                     )
                 )
             elif item == "mission_plan":
                 self.assertIsNone(
-                    validate(payload_data, mission_plan_schema, format_checker=FormatChecker())
+                    validate(
+                        payload_data,
+                        mission_plan_schema,
+                        format_checker=FormatChecker(),
+                    )
                 )
             elif item == "platform_status":
                 self.assertIsNone(
                     validate(
-                        payload_data, platform_status_schema, format_checker=FormatChecker()
+                        payload_data,
+                        platform_status_schema,
+                        format_checker=FormatChecker(),
                     )
                 )
             elif item == "observation":
                 self.assertIsNone(
-                    validate(payload_data, observation_schema, format_checker=FormatChecker())
+                    validate(
+                        payload_data,
+                        observation_schema,
+                        format_checker=FormatChecker(),
+                    )
                 )
 
     def test_sample_autonomy_engine_messages(self):
@@ -130,34 +165,60 @@ class TestSchema(unittest.TestCase):
             mock_data = json.load(f)
             header_data = mock_data["header"]
             payload_data = mock_data["payload"]
-            self.assertIsNone(validate(header_data, message_header, format_checker=FormatChecker()))
+            self.assertIsNone(
+                validate(
+                    header_data,
+                    message_header,
+                    format_checker=FormatChecker(),
+                )
+            )
             if item == "platform_status-from_usbl_example.json":
                 self.assertIsNone(
                     validate(
-                        payload_data, platform_status_schema, format_checker=FormatChecker()
+                        payload_data,
+                        platform_status_schema,
+                        format_checker=FormatChecker(),
                     )
                 )
             elif item == "mission_plan_AH1":
                 self.assertIsNone(
-                    validate(payload_data, mission_plan_schema, format_checker=FormatChecker())
+                    validate(
+                        payload_data,
+                        mission_plan_schema,
+                        format_checker=FormatChecker(),
+                    )
                 )
             elif item == "mission_plan_ECOSUB":
                 self.assertIsNone(
-                    validate(payload_data, mission_plan_schema, format_checker=FormatChecker())
+                    validate(
+                        payload_data,
+                        mission_plan_schema,
+                        format_checker=FormatChecker(),
+                    )
                 )
             elif item == "mission_plan_HYDROSURV":
                 self.assertIsNone(
-                    validate(payload_data, mission_plan_schema, format_checker=FormatChecker())
+                    validate(
+                        payload_data,
+                        mission_plan_schema,
+                        format_checker=FormatChecker(),
+                    )
                 )
             elif item == "platform_status":
                 self.assertIsNone(
                     validate(
-                        payload_data, platform_status_schema, format_checker=FormatChecker()
+                        payload_data,
+                        platform_status_schema,
+                        format_checker=FormatChecker(),
                     )
                 )
             elif item == "observation":
                 self.assertIsNone(
-                    validate(payload_data, observation_schema, format_checker=FormatChecker())
+                    validate(
+                        payload_data,
+                        observation_schema,
+                        format_checker=FormatChecker(),
+                    )
                 )
             elif item == "planning_configuration":
                 self.assertIsNone(
@@ -170,9 +231,12 @@ class TestSchema(unittest.TestCase):
             elif item == "acknowledgement":
                 self.assertIsNone(
                     validate(
-                        payload_data, acknowledgement_schema, format_checker=FormatChecker()
+                        payload_data,
+                        acknowledgement_schema,
+                        format_checker=FormatChecker(),
                     )
                 )
 
-if __name__ == '__main__':
+
+if __name__ == "__main__":
     unittest.main()
-- 
GitLab