diff options
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.py | 61 |
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]" |