← Back to team overview

sts-sponsors team mailing list archive

[Merge] ~ack/site-manager:add-token-test into site-manager:main

 

You have been requested to review the proposed merge of ~ack/site-manager:add-token-test into site-manager:main.

For more details, see:
https://code.launchpad.net/~ack/site-manager/+git/site-manager/+merge/437142



-- 
Your team MAAS Committers is requested to review the proposed merge of ~ack/site-manager:add-token-test into site-manager:main.
diff --git a/msm/user_api/tests/test_handlers.py b/msm/user_api/tests/test_handlers.py
index a7b720d..4cdee89 100644
--- a/msm/user_api/tests/test_handlers.py
+++ b/msm/user_api/tests/test_handlers.py
@@ -1,3 +1,8 @@
+from datetime import (
+    datetime,
+    timedelta,
+)
+
 from fastapi.testclient import TestClient
 import pytest
 
@@ -20,3 +25,18 @@ async def test_list_sites(
     response = user_app_client.get("/sites")
     assert response.status_code == 200
     assert response.json() == sites
+
+
+@pytest.mark.asyncio
+async def test_create_token(user_app_client: TestClient) -> None:
+    seconds = 100
+    response = user_app_client.post(
+        "/tokens", json={"count": 5, "duration": seconds}
+    )
+    assert response.status_code == 200
+    result = response.json()
+    assert datetime.fromisoformat(result["expiration"]) < (
+        datetime.utcnow() + timedelta(seconds=seconds)
+    )
+
+    assert len(result["tokens"]) == 5