diff options
author | Thomas Duval <thomas.duval@orange.com> | 2018-01-22 15:51:03 +0100 |
---|---|---|
committer | Thomas Duval <thomas.duval@orange.com> | 2018-01-24 09:55:31 +0100 |
commit | 72413a4640e458690cf65f445bc10f28886f4e8f (patch) | |
tree | b7e4ac1c181584f07e28b39e6aa24d3cf00822f5 /moon_manager/tests/functional_pod/test_models.py | |
parent | 36fe604a69eaa4c36f309bd68e36d75c3850c5c4 (diff) |
Functional tests development
Change-Id: I641522d813f171a4eed0e6b39b2f25cc470c76d1
Diffstat (limited to 'moon_manager/tests/functional_pod/test_models.py')
-rw-r--r-- | moon_manager/tests/functional_pod/test_models.py | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/moon_manager/tests/functional_pod/test_models.py b/moon_manager/tests/functional_pod/test_models.py new file mode 100644 index 00000000..dcda9f32 --- /dev/null +++ b/moon_manager/tests/functional_pod/test_models.py @@ -0,0 +1,78 @@ +import json +import requests + + +def get_models(context): + req = requests.get("http://{}:{}/models".format( + context.get("hostname"), + context.get("port")), + timeout=3) + models = req.json() + return req, models + + +def add_models(context, name): + data = { + "name": name, + "description": "description of {}".format(name), + "meta_rules": ["meta_rule_id1", "meta_rule_id2"] + } + req = requests.post("http://{}:{}/models".format( + context.get("hostname"), + context.get("port")), + data=json.dumps(data), + headers={'Content-Type': 'application/json'}, + timeout=3) + models = req.json() + return req, models + + +def delete_models(context, name): + _, models = get_models(context) + request = None + for key, value in models['models'].items(): + if value['name'] == name: + request = requests.delete("http://{}:{}/models/{}".format(key, + context.get("hostname"), + context.get("port")), + timeout=3) + break + return request + + +def delete_models_without_id(context): + req = requests.delete("http://{}:{}/models/{}".format( + context.get("hostname"), + context.get("port"), + ""), + timeout=3) + return req + + +def test_get_models(context): + req, models = get_models(context) + assert req.status_code == 200 + assert isinstance(models, dict) + assert "models" in models + + +def test_add_models(context): + req, models = add_models(context, "testuser") + assert req.status_code == 200 + assert isinstance(models, dict) + value = list(models["models"].values())[0] + assert "models" in models + assert value['name'] == "testuser" + assert value["description"] == "description of {}".format("testuser") + assert value["meta_rules"][0] == "meta_rule_id1" + + +def test_delete_models(context): + req = delete_models(context, "testuser") + assert req.status_code == 200 + + +def test_delete_models_without_id(context): + req = delete_models_without_id(context) + assert req.status_code == 500 + |