aboutsummaryrefslogtreecommitdiffstats
path: root/test/test_PolicyCalls.py
diff options
context:
space:
mode:
authorSastry Isukapalli <sastry@research.att.com>2018-03-28 22:21:30 -0400
committerSastry Isukapalli <sastry@research.att.com>2018-03-28 22:57:12 -0400
commitab7a87456538e561d60d209fe534c175ddd0269c (patch)
tree1724b218d148f989cf8e3647bc1bd703526f08c8 /test/test_PolicyCalls.py
parentad29f38cbcb164a7f328b26daf789dbff90deb98 (diff)
Functest scripts, simulators, and payloads
osdf/adapters/policy/utils.py: Removed duplicated code (group_policies and group_policies_gen are very similar, and group_policies seems to be not used osdf/optimizers/placementopt/conductor/api_builder.py: changed param name from "grouped_policies" to "flat_policies" tox.ini added starup and shutdown of simulators (flask app with mock payloads) in tox tests rest all files/changes in "test/" folder quite a few payload files Patch set 2: removed a "print()" statement from simulator code Issue-ID: OPTFRA-22 Change-Id: I0006c577fc459c7c884b55e8316c689afd151780 Signed-off-by: Sastry Isukapalli <sastry@research.att.com>
Diffstat (limited to 'test/test_PolicyCalls.py')
-rw-r--r--test/test_PolicyCalls.py48
1 files changed, 22 insertions, 26 deletions
diff --git a/test/test_PolicyCalls.py b/test/test_PolicyCalls.py
index 30fc072..fef7574 100644
--- a/test/test_PolicyCalls.py
+++ b/test/test_PolicyCalls.py
@@ -45,41 +45,32 @@ class TestPolicyCalls(unittest.TestCase):
def tearDown(self):
pass
+ def get_req_resp(self, req_file, resp_file):
+ """Get request/response from files"""
+ req_json = json_from_file(req_file)
+ resp_json = json_from_file(resp_file)
+ return req_json, resp_json
+
def test_policy_api_call(self):
- req_json_file = "./test/placement-tests/request.json"
- req_json = json.loads(open(req_json_file).read())
- policy_response_file = "./test/placement-tests/policy_response.json"
- policy_response = json.loads(open(policy_response_file).read())
+ req_json, policy_response = self.get_req_resp("./test/placement-tests/request.json",
+ "./test/placement-tests/policy_response.json")
with patch('osdf.adapters.policy.interface.policy_api_call', return_value=policy_response):
policy_list = interface.remote_api(req_json, osdf_config, service_type="placement")
self.assertIsNotNone(policy_list)
- def test_policy_api_call_failed_1(self):
- req_json_file = "./test/placement-tests/request_error1.json"
- req_json = json.loads(open(req_json_file).read())
- policy_response_file = "./test/placement-tests/policy_response.json"
- policy_response = json.loads(open(policy_response_file).read())
- with patch('osdf.adapters.policy.interface.policy_api_call', return_value=policy_response):
- self.assertRaises(BusinessException,
- lambda: interface.remote_api(req_json, osdf_config, service_type="placement"))
-
- def test_policy_api_call_failed_2(self):
- req_json_file = "./test/placement-tests/request.json"
- req_json = json.loads(open(req_json_file).read())
- policy_response_file = "./test/placement-tests/policy_response_error1.json"
- policy_response = json.loads(open(policy_response_file).read())
+ def failure_policy_call(self, req_json_file, resp_json_file):
+ req_json, policy_response = self.get_req_resp(req_json_file, resp_json_file)
with patch('osdf.adapters.policy.interface.policy_api_call', return_value=policy_response):
self.assertRaises(BusinessException,
lambda: interface.remote_api(req_json, osdf_config, service_type="placement"))
- def test_policy_api_call_failed_3(self):
- req_json_file = "./test/placement-tests/request.json"
- req_json = json.loads(open(req_json_file).read())
- policy_response_file = "./test/placement-tests/policy_response_error2.json"
- policy_response = json.loads(open(policy_response_file).read())
- with patch('osdf.adapters.policy.interface.policy_api_call', return_value=policy_response):
- self.assertRaises(BusinessException,
- lambda: interface.remote_api(req_json, osdf_config, service_type="placement"))
+ def test_policy_api_call_failed_multi(self):
+ prefix = "./test/placement-tests"
+ fail_cases = [("request_error1.json", "policy_response.json"),
+ ("request.json", "policy_response_error1.json"),
+ ("request.json", "policy_response_error2.json")]
+ for req, resp in fail_cases:
+ self.failure_policy_call(prefix + "/" + req, prefix + "/" + resp)
def test_get_by_scope(self):
req_json_file = "./test/placement-tests/testScoperequest.json"
@@ -110,5 +101,10 @@ class TestPolicyCalls(unittest.TestCase):
self.assertListEqual(genDemandslist, actionsList, 'generated demands are not equal to the passed input'
'[placementDemand][resourceModuleName] list')
+ def test_local_policy_location(self):
+ req_json = json_from_file("./test/placement-tests/request.json")
+ return interface.local_policies_location(req_json, osdf_config, service_type="placement")
+
+
if __name__ == '__main__':
unittest.main()