Add test in moon_authz 93/50293/1
authorReemMahmoud <rfawzy.ext@orange.com>
Tue, 9 Jan 2018 10:34:35 +0000 (12:34 +0200)
committerReemMahmoud <rfawzy.ext@orange.com>
Tue, 9 Jan 2018 10:35:48 +0000 (12:35 +0200)
Change-Id: Ie423ac92866a6abd49cad2741a96809361660e20
Signed-off-by: ReemMahmoud <rfawzy.ext@orange.com>
moon_authz/tests/unit_python/test_authz.py

index cf37cfd..2352fe0 100644 (file)
@@ -1,5 +1,6 @@
 import json
 import pickle
+import pytest
 
 
 def get_data(data):
@@ -10,6 +11,13 @@ def get_json(data):
     return json.loads(data.decode("utf-8"))
 
 
+def run(component_data, cache, context):
+    from moon_authz.api.authorization import Authz
+    authz = Authz(component_data=component_data, cache=cache)
+    authz.context = context
+    authz.run()
+
+
 def test_authz_true(context):
     import moon_authz.server
     from python_moonutilities.context import Context
@@ -89,3 +97,20 @@ def test_action_not_allowed(context):
     assert isinstance(data, dict)
     assert "message" in data
     assert data["message"] == "Cannot find action invalid"
+
+
+def test_authz_with_empty_pdp_set(context):
+    from python_moonutilities.context import Context
+    from python_moonutilities.cache import Cache
+    CACHE = Cache()
+    CACHE.update()
+    _context = Context(context, CACHE)
+    component_data = {
+        'component_id': 'component_id1',
+        'pdp_id': 'pdp_id1',
+        'meta_rule_id': 'meta_rule_id1',
+        'keystone_project_id': 'keystone_project_id1',
+    }
+    with pytest.raises(Exception) as exception_info:
+        run(component_data, CACHE, _context)
+    assert str(exception_info.value) == '400: Pdp Unknown'