summaryrefslogtreecommitdiff
path: root/tests/test_replace.py
diff options
context:
space:
mode:
authorVictor Näslund <victor@sunet.se>2022-11-17 22:04:24 +0100
committerVictor Näslund <victor@sunet.se>2022-11-17 22:04:24 +0100
commit03735d4c6fc17193e5019d3bd595bad2ce41c61f (patch)
tree889e5b6615f62930ef2ebd1e36616a177fca539e /tests/test_replace.py
parenta276c55e8f1f7f2c5872a43485425dd85f1dfa9f (diff)
added tests
Diffstat (limited to 'tests/test_replace.py')
-rw-r--r--tests/test_replace.py102
1 files changed, 102 insertions, 0 deletions
diff --git a/tests/test_replace.py b/tests/test_replace.py
new file mode 100644
index 0000000..291207f
--- /dev/null
+++ b/tests/test_replace.py
@@ -0,0 +1,102 @@
+"""
+Test our replace
+"""
+import unittest
+import json
+
+import requests
+
+from src.soc_collector.auth import load_api_keys
+from src.soc_collector.soc_collector_cli import json_load_data
+
+
+BASE_URL = "https://localhost:8000"
+
+
+class TestAddress(unittest.TestCase):
+ """
+ Test our replace
+ """
+
+ def test_replace(self) -> None:
+ """
+ Test replace
+ """
+
+ api_keys = load_api_keys("data/api_keys.txt")
+ insert_data = json_load_data("./tests/data/example_data_1.json")
+ replace_data = json_load_data("./tests/data/example_data_1_replace_test.json")
+
+ request_headers = {"API-KEY": api_keys[-1]}
+ req = requests.post(
+ f"{BASE_URL}/sc/v0",
+ json=insert_data,
+ headers=request_headers,
+ timeout=4,
+ verify="./data/collector_root_ca.crt",
+ )
+ self.assertTrue(req.status_code == 200)
+ replace_data["_id"] = json.loads(req.text)["_id"]
+
+ bad_data = replace_data.copy()
+
+ # ip missing
+ del bad_data["ip"]
+ req = requests.put(
+ f"{BASE_URL}/sc/v0",
+ json=bad_data,
+ headers=request_headers,
+ timeout=4,
+ verify="./data/collector_root_ca.crt",
+ )
+ self.assertTrue(req.status_code == 400)
+
+ bad_data["ip"] = replace_data["ip"]
+ del bad_data["_id"]
+ req = requests.put(
+ f"{BASE_URL}/sc/v0",
+ json=bad_data,
+ headers=request_headers,
+ timeout=4,
+ verify="./data/collector_root_ca.crt",
+ )
+ self.assertTrue(req.status_code == 400)
+
+ bad_data["_id"] = "sdvnsvdlac"
+ req = requests.put(
+ f"{BASE_URL}/sc/v0",
+ json=bad_data,
+ headers=request_headers,
+ timeout=4,
+ verify="./data/collector_root_ca.crt",
+ )
+ self.assertTrue(req.status_code == 400)
+
+ req = requests.put(
+ f"{BASE_URL}/sc/v0",
+ json=replace_data,
+ headers=request_headers,
+ timeout=4,
+ verify="./data/collector_root_ca.crt",
+ )
+ self.assertTrue(req.status_code == 200)
+
+ req = requests.get(
+ f"{BASE_URL}/sc/v0/{replace_data['_id']}",
+ json=insert_data,
+ headers=request_headers,
+ timeout=4,
+ verify="./data/collector_root_ca.crt",
+ )
+ self.assertTrue(req.status_code == 200)
+ db_data = json.loads(req.text)["doc"]
+ self.assertTrue(replace_data == db_data)
+
+ # Delete test data
+ req = requests.delete(
+ f"{BASE_URL}/sc/v0/{replace_data['_id']}",
+ headers=request_headers,
+ timeout=4,
+ verify="./data/collector_root_ca.crt",
+ )
+ self.assertTrue(req.status_code == 200)