def test_service_upload_tca_artifact(): """Integration tests for Service.""" response = requests.post("{}/reset".format(SDC.base_front_url)) response.raise_for_status() vendor = Vendor(name="test") vendor.onboard() vsp = Vsp(name="test", package=open( "{}/ubuntu16.zip".format( os.path.dirname(os.path.abspath(__file__))), 'rb')) vsp.vendor = vendor vsp.onboard() vf = Vf(name='test', vsp=vsp) vf.onboard() svc = Service(name='test') svc.create() svc.add_resource(vf) assert svc.status == const.DRAFT payload_file = open( "{}/tca_clampnode.yaml".format( os.path.dirname(os.path.abspath(__file__))), 'rb') data = payload_file.read() svc.add_artifact_to_vf(vnf_name="test", artifact_type="DCAE_INVENTORY_BLUEPRINT", artifact_name="tca_clampnode.yaml", artifact=data) payload_file.close()
def test_vendor_onboard_unknown(): """Integration tests for Vendor.""" response = requests.post("{}/reset".format(SDC.base_front_url)) response.raise_for_status() vendor = Vendor(name="test") vendor.onboard() assert vendor.status == const.CERTIFIED
def test_service_unknown(): """Integration tests for Service.""" response = requests.post("{}/reset".format(SDC.base_front_url)) response.raise_for_status() vendor = Vendor(name="test") vendor.onboard() vsp = Vsp(name="test", package=open( "{}/ubuntu16.zip".format( os.path.dirname(os.path.abspath(__file__))), 'rb')) vsp.vendor = vendor vsp.onboard() vf = Vf(name='test', vsp=vsp) vf.onboard() svc = Service(name='test') assert svc.identifier is None assert svc.status is None svc.create() assert svc.identifier is not None assert svc.status == const.DRAFT svc.add_resource(vf) svc.checkin() assert svc.status == const.CHECKED_IN svc.certify() assert svc.status == const.CERTIFIED svc.distribute() assert svc.status == const.DISTRIBUTED assert svc.distributed
def test_service_properties(): """Integration test to check properties assignment for Service.""" response = requests.post("{}/reset".format(SDC.base_front_url)) response.raise_for_status() vendor = Vendor(name="test") vendor.onboard() vsp = Vsp(name="test", package=open( "{}/ubuntu16.zip".format( os.path.dirname(os.path.abspath(__file__))), 'rb')) vsp.vendor = vendor vsp.onboard() vf = Vf(name='test', vsp=vsp) vf.onboard() properties = [ Property(name="test1", property_type="string", value="123"), Property(name="test2", property_type="integer") ] svc = Service(name='test', resources=[vf], properties=properties, inputs=[properties[1]]) svc.onboard() service_properties = list(svc.properties) service_inputs = list(svc.inputs) assert len(service_properties) == 2 assert len(service_inputs) == 1
def test_onboard_whole_vendor(mock_create, mock_submit): getter_mock = mock.Mock(wraps=Vendor.status.fget) mock_status = Vendor.status.getter(getter_mock) with mock.patch.object(Vendor, 'status', mock_status): getter_mock.side_effect = [None, const.DRAFT, const.DRAFT, None] vendor = Vendor() vendor.onboard() mock_submit.assert_called_once() mock_create.assert_called_once()
def test_vsp_onboard_unknown(): """Integration tests for Vsp.""" response = requests.post("{}/reset".format(Vendor.base_front_url)) response.raise_for_status() vendor = Vendor(name="test") vendor.onboard() vsp = Vsp(name="test", package=open("{}/ubuntu16.zip".format( os.path.dirname(os.path.abspath(__file__))), 'rb')) vsp.vendor = vendor vsp.onboard() assert vsp.status == const.CERTIFIED assert vsp.csar_uuid is not None
def test_service_onboard_unknown(): """Integration tests for Service.""" response = requests.post("{}/reset".format(SDC.base_front_url)) response.raise_for_status() vendor = Vendor(name="test") vendor.onboard() vsp = Vsp(name="test", package=open( "{}/ubuntu16.zip".format( os.path.dirname(os.path.abspath(__file__))), 'rb')) vsp.vendor = vendor vsp.onboard() vf = Vf(name='test', vsp=vsp) vf.onboard() svc = Service(name='test', resources=[vf]) svc.onboard() assert svc.distributed
def test_vsp_unknown(): """Integration tests for Vsp.""" response = requests.post("{}/reset".format(Vendor.base_front_url)) response.raise_for_status() vendor = Vendor(name="test") vendor.onboard() vsp = Vsp(name="test") vsp.vendor = vendor vsp.create() assert vsp.identifier is not None assert vsp.status == const.DRAFT vsp.upload_package(open("{}/ubuntu16.zip".format( os.path.dirname(os.path.abspath(__file__))), 'rb')) assert vsp.status == const.UPLOADED vsp.validate() assert vsp.status == const.VALIDATED vsp.commit() assert vsp.status == const.COMMITED vsp.submit() assert vsp.status == const.CERTIFIED vsp.create_csar() assert vsp.csar_uuid is not None
def test_vf_properties(): """Integration test to check properties assignment for Vf.""" response = requests.post("{}/reset".format(Vendor.base_front_url)) response.raise_for_status() vendor = Vendor(name="test") vendor.onboard() vsp = Vsp(name="test", package=open( "{}/ubuntu16.zip".format( os.path.dirname(os.path.abspath(__file__))), 'rb')) vsp.vendor = vendor vsp.onboard() prop = Property(name="test1", property_type="string", value="123") vf = Vf(name="test", vsp=vsp, properties=[prop, Property(name="test2", property_type="integer")], inputs=[prop]) vf.onboard() vf_properties = list(vf.properties) vf_inputs = list(vf.inputs) assert len(vf_properties) == 2 assert len(vf_inputs) == 1
def test_vf_unknown(): """Integration tests for Vf.""" response = requests.post("{}/reset".format(Vendor.base_front_url)) response.raise_for_status() vendor = Vendor(name="test") vendor.onboard() vsp = Vsp(name="test", package=open( "{}/ubuntu16.zip".format( os.path.dirname(os.path.abspath(__file__))), 'rb')) vsp.vendor = vendor vsp.onboard() vf = Vf(name='test') vf.vsp = vsp vf.create() assert vf.identifier is not None assert vf.status == const.DRAFT assert vf.version == "0.1" vf.submit() assert vsp.status == const.CERTIFIED assert vf.version == "1.0" vf.load() assert vsp.status == const.CERTIFIED assert vf.version == "1.0"
logger.info("*******************************") with zipfile.ZipFile(Config.VSPFILE, 'r') as package: cba_io = BytesIO(package.read("CBA.zip")) with zipfile.ZipFile(cba_io) as cba: with cba.open('TOSCA-Metadata/TOSCA.meta') as meta_file: tosca_meta = yaml.load(meta_file, Loader=yaml.FullLoader) SDNC_MODEL_NAME = tosca_meta.get("Template-Name") SDNC_MODEL_VERSION = tosca_meta.get("Template-Version") logger.info("*******************************") logger.info("******** SERVICE DESIGN *******") logger.info("*******************************") logger.info("******** Onboard Vendor *******") vendor = Vendor(name=Config.VENDOR) vendor.onboard() logger.info("******** Onboard VSP *******") mypath = os.path.dirname(os.path.realpath(__file__)) myvspfile = os.path.join(mypath, Config.VSPFILE) vsp = Vsp(name=Config.VSPNAME, vendor=vendor, package=open(myvspfile, 'rb')) vsp.onboard() logger.info("******** Onboard VF *******") vf = Vf(name=Config.VFNAME) vf.vsp = vsp vf.create() vf.onboard() logger.info("******** Onboard Service *******") svc = Service(name=Config.SERVICENAME,