summaryrefslogtreecommitdiffstats
path: root/test/test_PolicyCalls.py
diff options
context:
space:
mode:
authorSastry Isukapalli <sastry@research.att.com>2018-03-17 02:40:15 -0400
committerSastry Isukapalli <sastry@research.att.com>2018-03-17 07:07:32 +0000
commit1a9638f5d5fc78f7e8be700e71b506fed3cc9d2d (patch)
treea5c38fbddd08beeead83c943ab2c744d448944f8 /test/test_PolicyCalls.py
parent7c70d5ba1469b9ea3220bc61be1d1973e5e3e98a (diff)
New policies and required code changes
Issue-ID: OPTFRA-146 Change-Id: I2261ae69f52b184cd7dcb7b86d5905538666a411 Signed-off-by: Sastry Isukapalli <sastry@research.att.com>
Diffstat (limited to 'test/test_PolicyCalls.py')
-rw-r--r--test/test_PolicyCalls.py60
1 files changed, 29 insertions, 31 deletions
diff --git a/test/test_PolicyCalls.py b/test/test_PolicyCalls.py
index 0378dbd..83cce55 100644
--- a/test/test_PolicyCalls.py
+++ b/test/test_PolicyCalls.py
@@ -18,16 +18,32 @@
import json
import unittest
+from osdf.adapters.local_data import local_policies
from osdf.config.base import osdf_config
from osdf.adapters.policy import interface
-from osdf.utils.interfaces import RestClient
+from osdf.utils.interfaces import RestClient, json_from_file
import yaml
from mock import patch
from osdf.optimizers.placementopt.conductor import translation
class TestPolicyCalls(unittest.TestCase):
-
+
+ def setUp(self):
+ main_dir = ""
+ parameter_data_file = main_dir + "test/placement-tests/request.json"
+ policy_data_path = main_dir + "test/policy-local-files/"
+ local_config_file = main_dir + "config/common_config.yaml"
+
+ valid_policies_list_file = policy_data_path + '/' + 'meta-valid-policies.txt'
+ valid_policies_files = local_policies.get_policy_names_from_file(valid_policies_list_file)
+
+ self.request_json = json_from_file(parameter_data_file)
+ self.policies = [json_from_file(policy_data_path + '/' + name) for name in valid_policies_files]
+
+ def tearDown(self):
+ pass
+
def test_get_subscriber_name(self):
req_json_obj = json.loads(open("./test/placement-tests/request_mso.json").read())
config_core = osdf_config.core
@@ -36,8 +52,7 @@ class TestPolicyCalls(unittest.TestCase):
subs_name = interface.get_subscriber_name(req_json_obj, pmain)
print("subscriber_name=", subs_name)
self.assertEquals(subs_name, "Avteet_Chayal")
-
-
+
def test_get_subscriber_name_null(self):
req_json_file = "./test/placement-tests/request_mso_subs_name_null.json"
req_json_obj = json.loads(open(req_json_file).read())
@@ -48,7 +63,6 @@ class TestPolicyCalls(unittest.TestCase):
subs_name = interface.get_subscriber_name(req_json_obj, pmain)
print("subscriber_name=", subs_name)
self.assertEquals(subs_name, "DEFAULT")
-
def test_get_subscriber_name_blank(self):
req_json_file = "./test/placement-tests/request_mso_subs_name_blank.json"
@@ -60,7 +74,6 @@ class TestPolicyCalls(unittest.TestCase):
subs_name = interface.get_subscriber_name(req_json_obj, pmain)
print("subscriber_name=", subs_name)
self.assertEquals(subs_name, "DEFAULT")
-
def test_get_subscriber_name_default(self):
req_json_file = "./test/placement-tests/request_mso_subs_name_default.json"
@@ -73,7 +86,6 @@ class TestPolicyCalls(unittest.TestCase):
print("subscriber_name=", subs_name)
self.assertEquals(subs_name, "DEFAULT")
-
def test_get_subscriber_name_none(self):
req_json_file = "./test/placement-tests/request_mso_subs_name_none.json"
req_json_obj = json.loads(open(req_json_file).read())
@@ -84,49 +96,35 @@ class TestPolicyCalls(unittest.TestCase):
subs_name = interface.get_subscriber_name(req_json_obj, pmain)
print("subscriber_name=", subs_name)
self.assertEquals(subs_name, "DEFAULT")
-
def test_get_by_scope(self):
req_json_file = "./test/placement-tests/testScoperequest.json"
allPolicies = "./test/placement-tests/scopePolicies.json"
req_json_obj = json.loads(open(req_json_file).read())
req_json_obj2 = json.loads(open(allPolicies).read())
- config_core = osdf_config.core
yamlFile = "./test/placement-tests/test_by_scope.yaml"
with open(yamlFile) as yamlFile2:
- policyConfigFile = yaml.load(yamlFile2)
- with patch('osdf.adapters.policy.interface.get_subscriber_role', return_value=('FFA Homing', [])) as mock_open:
- with patch('osdf.utils.interfaces.RestClient.request', return_value = req_json_obj2):
- policiesList = interface.get_by_scope(RestClient, req_json_obj, policyConfigFile, 'placement')
- print(policiesList)
- #catches Exception if policiesList is null
+ policy_config_file = yaml.load(yamlFile2)
+ with patch('osdf.adapters.policy.interface.get_subscriber_role',
+ return_value=('FFA Homing', [])) as mock_open:
+ with patch('osdf.utils.interfaces.RestClient.request', return_value=req_json_obj2):
+ policiesList = interface.get_by_scope(RestClient, req_json_obj, policy_config_file, 'placement')
self.assertTrue(policiesList, 'is null')
self.assertRaises(Exception)
def test_gen_demands(self):
actionsList = []
genDemandslist = []
- req_json = "./test/placement-tests/testScoperequest.json"
- policiesList = "./test/placement-tests/vnfGroupPolicies.txt"
- fh = json.loads(open(policiesList).read())
- #print(fh)
+ req_json = "./test/placement-tests/request.json"
req_json = json.loads(open(req_json).read())
- config_core = osdf_config.core
- service_type = req_json['placementInfo'].get('serviceType', None)
- # service_type = data_mapping.get_request_service_type(req_json_file)
- genDemands = translation.gen_demands(req_json['placementInfo']['demandInfo'], fh)
- #print(genDemands)
- #print(req_json_file['placementInfo']['demandInfo']['placementDemand'][0])
- for action in req_json['placementInfo']['demandInfo']['placementDemand']:
- #print(action['resourceModuleName'])
+ genDemands = translation.gen_demands(req_json, self.policies)
+ for action in req_json['placementInfo']['placementDemands']:
actionsList.append(action['resourceModuleName'])
for key2,value in genDemands.items():
- #print(key2)
genDemandslist.append(key2)
- #genDemandslist.remove('Primary IP_Mux_Demux updated_1 0')
- #catches Exception if lists are not equal
- self.assertListEqual(genDemandslist, actionsList, 'generated demands are not equal to the passed input [placementDemand][resourceModuleName] list')
+ self.assertListEqual(genDemandslist, actionsList, 'generated demands are not equal to the passed input'
+ '[placementDemand][resourceModuleName] list')
if __name__ == '__main__':
unittest.main()