X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=test%2Ftest_ConductorApiBuilder.py;h=34f698981ee6a827a5058bf4eb6cdada2242138f;hb=HEAD;hp=f8683a3e01523ecc0bd70b7634fbf5acefa1c7e2;hpb=ad29f38cbcb164a7f328b26daf789dbff90deb98;p=optf%2Fosdf.git diff --git a/test/test_ConductorApiBuilder.py b/test/test_ConductorApiBuilder.py index f8683a3..34f6989 100644 --- a/test/test_ConductorApiBuilder.py +++ b/test/test_ConductorApiBuilder.py @@ -1,5 +1,6 @@ # ------------------------------------------------------------------------- # Copyright (c) 2017-2018 AT&T Intellectual Property +# Copyright (C) 2020 Wipro Limited. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -19,8 +20,8 @@ import unittest import json import yaml +from osdf.adapters.conductor.api_builder import conductor_api_builder from osdf.adapters.local_data import local_policies -from osdf.optimizers.placementopt.conductor.api_builder import conductor_api_builder from osdf.utils.interfaces import json_from_file @@ -28,28 +29,52 @@ class TestConductorApiBuilder(unittest.TestCase): def setUp(self): self.main_dir = "" - conductor_api_template = self.main_dir + "osdf/templates/conductor_interface.json" - parameter_data_file = self.main_dir + "test/placement-tests/request.json" # "test/placement-tests/request.json" + self.conductor_api_template = self.main_dir + "osdf/adapters/conductor/templates/conductor_interface.json" + self.local_config_file = self.main_dir + "config/common_config.yaml" policy_data_path = self.main_dir + "test/policy-local-files" # "test/policy-local-files" - local_config_file = self.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) + parameter_data_file = self.main_dir + "test/placement-tests/request.json" # "test/placement-tests/request.json" self.request_json = json_from_file(parameter_data_file) + parameter_data_file = self.main_dir + "test/placement-tests/request_vfmod.json" + self.request_vfmod_json = json_from_file(parameter_data_file) + parameter_data_file = self.main_dir + "test/placement-tests/request_placement_vfmod.json" + self.request_placement_vfmod_json = json_from_file(parameter_data_file) self.policies = [json_from_file(policy_data_path + '/' + name) for name in valid_policies_files] + self.template_fields = { + 'location_enabled': True, + 'version': '2017-10-10' + } def test_conductor_api_call_builder(self): main_dir = self.main_dir - conductor_api_template = main_dir + "osdf/templates/conductor_interface.json" # "osdf/templates/conductor_interface.json" - local_config_file = main_dir + "config/common_config.yaml" request_json = self.request_json policies = self.policies - local_config = yaml.load(open(local_config_file)) - templ_string = conductor_api_builder(request_json, policies, local_config, conductor_api_template) + local_config = yaml.safe_load(open(self.local_config_file)) + req_info = request_json['requestInfo'] + demands = request_json['placementInfo']['placementDemands'] + request_parameters = request_json['placementInfo']['requestParameters'] + service_info = request_json['serviceInfo'] + templ_string = conductor_api_builder(req_info, demands, request_parameters, service_info, self.template_fields, + policies, local_config, self.conductor_api_template) templ_json = json.loads(templ_string) self.assertEqual(templ_json["name"], "yyy-yyy-yyyy") + def test_conductor_api_call_builder_vfmod(self): + request_json = self.request_vfmod_json + policies = self.policies + local_config = yaml.safe_load(open(self.local_config_file)) + req_info = request_json['requestInfo'] + demands = request_json['placementInfo']['placementDemands'] + request_parameters = request_json['placementInfo']['requestParameters'] + service_info = request_json['serviceInfo'] + templ_string = conductor_api_builder(req_info, demands, request_parameters, service_info, self.template_fields, + policies, local_config, self.conductor_api_template) + templ_json = json.loads(templ_string) + self.assertEqual(templ_json, self.request_placement_vfmod_json) + if __name__ == "__main__": unittest.main()