aboutsummaryrefslogtreecommitdiffstats
path: root/moon_manager/tests/unit_python/api/test_unit_models.py
diff options
context:
space:
mode:
Diffstat (limited to 'moon_manager/tests/unit_python/api/test_unit_models.py')
-rw-r--r--moon_manager/tests/unit_python/api/test_unit_models.py61
1 files changed, 36 insertions, 25 deletions
diff --git a/moon_manager/tests/unit_python/api/test_unit_models.py b/moon_manager/tests/unit_python/api/test_unit_models.py
index 52cb2871..d754b976 100644
--- a/moon_manager/tests/unit_python/api/test_unit_models.py
+++ b/moon_manager/tests/unit_python/api/test_unit_models.py
@@ -5,6 +5,8 @@
import json
import api.utilities as utilities
+from helpers import data_builder as builder
+from uuid import uuid4
def get_models(client):
@@ -14,10 +16,14 @@ def get_models(client):
def add_models(client, name):
+ subject_category_id, object_category_id, action_category_id, meta_rule_id = builder.create_new_meta_rule(
+ subject_category_name="subject_category"+uuid4().hex,
+ object_category_name="object_category"+uuid4().hex, action_category_name="action_category"+uuid4().hex,
+ meta_rule_name="meta_rule" + uuid4().hex)
data = {
"name": name,
"description": "description of {}".format(name),
- "meta_rules": ["meta_rule_id1", "meta_rule_id2"]
+ "meta_rules": [meta_rule_id]
}
req = client.post("/models", data=json.dumps(data),
headers={'Content-Type': 'application/json'})
@@ -26,13 +32,18 @@ def add_models(client, name):
def update_model(client, name, model_id):
+ subject_category_id, object_category_id, action_category_id, meta_rule_id = builder.create_new_meta_rule(
+ subject_category_name="subject_category" + uuid4().hex,
+ object_category_name="object_category" + uuid4().hex, action_category_name="action_category" + uuid4().hex,
+ meta_rule_name="meta_rule" + uuid4().hex)
+
data = {
"name": name,
"description": "description of {}".format(name),
- "meta_rules": ["meta_rule_id1_update", "meta_rule_id2_update"]
+ "meta_rules": [meta_rule_id]
}
req = client.patch("/models/{}".format(model_id), data=json.dumps(data),
- headers={'Content-Type': 'application/json'})
+ headers={'Content-Type': 'application/json'})
models = utilities.get_json(req.data)
return req, models
@@ -56,7 +67,7 @@ def update_model_without_meta_rules_ids(client, name):
"meta_rules": []
}
req = client.patch("/models", data=json.dumps(data),
- headers={'Content-Type': 'application/json'})
+ headers={'Content-Type': 'application/json'})
models = utilities.get_json(req.data)
return req, models
@@ -77,7 +88,7 @@ def delete_models_without_id(client):
def clean_models():
client = utilities.register_client()
- req, models= get_models(client)
+ req, models = get_models(client)
for key, value in models['models'].items():
print(key)
print(value)
@@ -86,7 +97,7 @@ def clean_models():
def test_get_models():
client = utilities.register_client()
- req, models= get_models(client)
+ req, models = get_models(client)
assert req.status_code == 200
assert isinstance(models, dict)
assert "models" in models
@@ -98,11 +109,10 @@ def test_add_models():
req, models = add_models(client, "testuser")
assert req.status_code == 200
assert isinstance(models, dict)
- value = list(models["models"].values())[0]
+ model_id = list(models["models"])[0]
assert "models" in models
- assert value['name'] == "testuser"
- assert value["description"] == "description of {}".format("testuser")
- assert value["meta_rules"][0] == "meta_rule_id1"
+ assert models['models'][model_id]['name'] == "testuser"
+ assert models['models'][model_id]["description"] == "description of {}".format("testuser")
def test_delete_models():
@@ -114,31 +124,32 @@ def test_delete_models():
def test_delete_models_without_id():
client = utilities.register_client()
req = delete_models_without_id(client)
- assert req.status_code == 500
+ assert req.status_code == 400
+ assert json.loads(req.data)["message"] == "400: Model Unknown"
def test_add_model_with_empty_user():
clean_models()
client = utilities.register_client()
req, models = add_models(client, "")
- assert req.status_code == 500
- assert json.loads(req.data)["message"] == "Empty String"
+ assert req.status_code == 400
+ assert json.loads(req.data)["message"] == "Key: 'name', [Empty String]"
def test_add_model_with_user_contain_space():
clean_models()
client = utilities.register_client()
req, models = add_models(client, "test user")
- assert req.status_code == 500
- assert json.loads(req.data)["message"] == "String contains space"
+ assert req.status_code == 400
+ assert json.loads(req.data)["message"] == "Key: 'name', [String contains space]"
def test_add_model_without_meta_rules():
clean_models()
client = utilities.register_client()
req, meta_rules = add_model_without_meta_rules_ids(client, "testuser")
- assert req.status_code == 500
- assert json.loads(req.data)["message"] == 'Empty Container'
+ assert req.status_code == 400
+ assert json.loads(req.data)["message"] == "Key: 'meta_rules', [Empty Container]"
def test_update_model():
@@ -148,8 +159,8 @@ def test_update_model():
model_id = list(req[1]['models'])[0]
req_update = update_model(client, "testuser", model_id)
assert req_update[0].status_code == 200
- value = list(req_update[1]["models"].values())[0]
- assert value["meta_rules"][0] == "meta_rule_id1_update"
+ model_id = list(req_update[1]["models"])[0]
+ assert req_update[1]["models"][model_id]["meta_rules"][0] is not None
delete_models(client, "testuser")
@@ -157,19 +168,19 @@ def test_update_meta_rules_without_id():
clean_models()
client = utilities.register_client()
req_update = update_model(client, "testuser", "")
- assert req_update[0].status_code == 500
+ assert req_update[0].status_code == 400
+ assert json.loads(req_update[0].data)["message"] == "400: Model Unknown"
def test_update_meta_rules_without_user():
client = utilities.register_client()
req_update = update_model(client, "", "")
- assert req_update[0].status_code == 500
- assert json.loads(req_update[0].data)["message"] == "Empty String"
+ assert req_update[0].status_code == 400
+ assert json.loads(req_update[0].data)["message"] == "Key: 'name', [Empty String]"
def test_update_meta_rules_without_meta_rules():
client = utilities.register_client()
req_update = update_model_without_meta_rules_ids(client, "testuser")
- assert req_update[0].status_code == 500
- assert json.loads(req_update[0].data)["message"] == "Empty Container"
-
+ assert req_update[0].status_code == 400
+ assert json.loads(req_update[0].data)["message"] == "Key: 'meta_rules', [Empty Container]"