From 7a652edae8d0d3c52a8fd1bbb5801e544f876109 Mon Sep 17 00:00:00 2001
From: Karel van Klink <karel.vanklink@geant.org>
Date: Tue, 31 Oct 2023 10:03:39 +0100
Subject: [PATCH] update package versioning, and add unit test for version
 endpoint

---
 lso/routes/default.py       |  4 ++--
 setup.py                    |  2 +-
 test/routes/test_default.py | 19 +++++++++++++++++++
 3 files changed, 22 insertions(+), 3 deletions(-)
 create mode 100644 test/routes/test_default.py

diff --git a/lso/routes/default.py b/lso/routes/default.py
index 2046c2c..5847e50 100644
--- a/lso/routes/default.py
+++ b/lso/routes/default.py
@@ -7,8 +7,8 @@ from importlib import metadata
 from fastapi import APIRouter
 from pydantic import BaseModel, constr
 
-API_VERSION = "1"
-VersionString = constr(pattern=r"\d+\.\d+")
+API_VERSION = "0.1.1"
+VersionString = constr(pattern=r"\d+\.\d+\.\d+")
 
 router = APIRouter()
 
diff --git a/setup.py b/setup.py
index 708c309..a7000cb 100644
--- a/setup.py
+++ b/setup.py
@@ -2,7 +2,7 @@ from setuptools import find_packages, setup
 
 setup(
     name="goat-lso",
-    version="0.1",
+    version="0.1.0",
     author="GÉANT Orchestration & Automation Team",
     author_email="TBD",
     description="Lightweight Service Orchestrator",
diff --git a/test/routes/test_default.py b/test/routes/test_default.py
new file mode 100644
index 0000000..e79322f
--- /dev/null
+++ b/test/routes/test_default.py
@@ -0,0 +1,19 @@
+from importlib import metadata
+
+import jsonschema
+import responses
+from starlette.testclient import TestClient
+
+from lso.routes.default import API_VERSION, Version
+
+
+@responses.activate
+def test_ip_trunk_modification(client: TestClient) -> None:
+    rv = client.get("/api/version/")
+    assert rv.status_code == 200
+    response = rv.json()
+
+    jsonschema.validate(response, Version.model_json_schema())
+
+    assert response["api"] == API_VERSION
+    assert response["module"] == metadata.version("goat-lso")
-- 
GitLab