From cc39d3bce13f716adc3335d4d46a25606598314e Mon Sep 17 00:00:00 2001 From: Remigiusz Janeczek Date: Tue, 29 Dec 2020 15:03:39 +0100 Subject: Update runtime-api with refactored bp-gen Issue-ID: DCAEGEN2-2529 Signed-off-by: Remigiusz Janeczek Change-Id: I763a46e01d259b25c656de7544949f19a1e01e11 --- .../org/onap/dcae/runtime/core/BpGenTestBase.java | 44 ++++++++++++++ .../dcae/runtime/core/TestFlowGraphParser.java | 69 +++++++++++----------- .../onap/dcae/runtime/core/TestIntegeration.java | 9 ++- .../org/onap/dcae/runtime/core/TestOnapBpGen.java | 26 ++++---- 4 files changed, 99 insertions(+), 49 deletions(-) create mode 100644 mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/BpGenTestBase.java (limited to 'mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core') diff --git a/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/BpGenTestBase.java b/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/BpGenTestBase.java new file mode 100644 index 0000000..ec67d8f --- /dev/null +++ b/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/BpGenTestBase.java @@ -0,0 +1,44 @@ +/*- + * ============LICENSE_START======================================================= + * Copyright (C) 2020 Nokia. All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END========================================================= + */ + +package org.onap.dcae.runtime.core; + +import org.junit.runner.RunWith; +import org.onap.blueprintgenerator.BlueprintGeneratorConfiguration; +import org.onap.blueprintgenerator.service.BlueprintCreatorService; +import org.onap.blueprintgenerator.service.base.BlueprintService; +import org.onap.blueprintgenerator.service.base.FixesService; +import org.onap.blueprintgenerator.service.common.ComponentSpecService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +@RunWith(SpringRunner.class) +@EnableConfigurationProperties +@SpringBootTest(classes = {BlueprintGeneratorConfiguration.class}) +public class BpGenTestBase { + @Autowired + BlueprintService blueprintService; + @Autowired + ComponentSpecService componentSpecService; + @Autowired + BlueprintCreatorService blueprintCreatorService; + @Autowired + FixesService fixesService; +} diff --git a/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestFlowGraphParser.java b/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestFlowGraphParser.java index 25e3e54..1b5a57c 100644 --- a/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestFlowGraphParser.java +++ b/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestFlowGraphParser.java @@ -1,13 +1,14 @@ /*- * ============LICENSE_START======================================================= * Copyright (C) 2019-2020 AT&T Intellectual Property. All rights reserved. + * Copyright (C) 2020 Nokia. All rights reserved. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -21,14 +22,12 @@ import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.io.Writer; -import java.util.Map; import org.junit.Rule; -import org.junit.rules.TemporaryFolder; import org.junit.Test; -import static org.junit.Assert.assertEquals; +import org.junit.rules.TemporaryFolder; import org.onap.dcae.runtime.core.blueprint_creator.BlueprintCreatorOnap; -public class TestFlowGraphParser { +public class TestFlowGraphParser extends BpGenTestBase { @Rule public TemporaryFolder folder = new TemporaryFolder(); @@ -36,39 +35,41 @@ public class TestFlowGraphParser { @Test public void testFlowGraphParser() throws IOException { try { - File importsfile = folder.newFile("imports.yaml"); - try (Writer w = new FileWriter(importsfile)) { - w.write( - "imports:\n" + - " - 'http://www.getcloudify.org/spec/cloudify/3.4/types.yaml'\n" + - " - 'https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R4/k8splugin/1.4.5/k8splugin_types.yaml'\n" + - " - 'https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R4/dcaepolicyplugin/2.3.0/dcaepolicyplugin_types.yaml'\n" - ); - } - FlowGraph mainFlowGraph = new FlowGraph<>("1234", "nifi-main", true, "mock graph"); - mainFlowGraph.addNode(new Node("dummy_id", "dummy_name", "dummy_compspec")); - BlueprintCreatorOnap bcod = new BlueprintCreatorOnap(); - bcod.setTopicUrl("u.r.l"); - bcod.setImportFilePath(importsfile.getAbsolutePath()); - FlowGraphParser flowGraphParser = new FlowGraphParser(bcod); - flowGraphParser.parse(mainFlowGraph); - String compspec = Helper.loadFileContent("src/test/data/compspecs/componentSpec_hello_world.json"); - mainFlowGraph.addNode(new Node("comp5678", "hello-world-2", compspec)); - mainFlowGraph.addNode(new Node("comp1234", "hello-world-1", compspec)); - mainFlowGraph.addEdge( - flowGraphParser.getNodeFromId("comp1234"), - flowGraphParser.getNodeFromId("comp5678"), - new Edge( - new EdgeLocation("comp1234", "DCAE-HELLO-WORLD-PUB-MR"), - new EdgeLocation("comp5678", "DCAE-HELLO-WORLD-SUB-MR"), - new EdgeMetadata("sample_topic_1", "json", "MR"))); - flowGraphParser.createAndProcessBlueprints(); + File importsfile = folder.newFile("imports.yaml"); + try (Writer w = new FileWriter(importsfile)) { + w.write( + "imports:\n" + + " - 'http://www.getcloudify.org/spec/cloudify/3.4/types.yaml'\n" + + " - 'https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R4/k8splugin/1.4.5/k8splugin_types.yaml'\n" + + + " - 'https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R4/dcaepolicyplugin/2.3.0/dcaepolicyplugin_types.yaml'\n" + ); + } + FlowGraph mainFlowGraph = new FlowGraph<>("1234", "nifi-main", true, "mock graph"); + mainFlowGraph.addNode(new Node("dummy_id", "dummy_name", "dummy_compspec")); + BlueprintCreatorOnap bcod = new BlueprintCreatorOnap(componentSpecService, blueprintCreatorService, + blueprintService, fixesService); + bcod.setTopicUrl("u.r.l"); + bcod.setImportFilePath(importsfile.getAbsolutePath()); + FlowGraphParser flowGraphParser = new FlowGraphParser(bcod); + flowGraphParser.parse(mainFlowGraph); + String compspec = Helper.loadFileContent("src/test/data/compspecs/componentSpec_hello_world.json"); + mainFlowGraph.addNode(new Node("comp5678", "hello-world-2", compspec)); + mainFlowGraph.addNode(new Node("comp1234", "hello-world-1", compspec)); + mainFlowGraph.addEdge( + flowGraphParser.getNodeFromId("comp1234"), + flowGraphParser.getNodeFromId("comp5678"), + new Edge( + new EdgeLocation("comp1234", "DCAE-HELLO-WORLD-PUB-MR"), + new EdgeLocation("comp5678", "DCAE-HELLO-WORLD-SUB-MR"), + new EdgeMetadata("sample_topic_1", "json", "MR"))); + flowGraphParser.createAndProcessBlueprints(); } catch (RuntimeException rte) { rte.printStackTrace(); throw rte; } catch (Exception e) { e.printStackTrace(); throw new RuntimeException(e); - } + } } } diff --git a/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestIntegeration.java b/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestIntegeration.java index 615993a..ac1c9b7 100644 --- a/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestIntegeration.java +++ b/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestIntegeration.java @@ -1,6 +1,7 @@ /*- * ============LICENSE_START======================================================= * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved. + * Copyright (C) 2020 Nokia. All rights reserved. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,13 +18,13 @@ */ package org.onap.dcae.runtime.core; -import org.onap.dcae.runtime.core.blueprint_creator.BlueprintCreator; import org.junit.Before; import org.junit.Ignore; import org.junit.Test; +import org.onap.dcae.runtime.core.blueprint_creator.BlueprintCreator; import org.onap.dcae.runtime.core.blueprint_creator.BlueprintCreatorOnap; -public class TestIntegeration { +public class TestIntegeration extends BpGenTestBase { private FlowGraphParser flowGraphParser; @@ -33,7 +34,9 @@ public class TestIntegeration { FlowGraph flowGraph = Helper.prepareFlowGraph(); //2. Inject graph in FlowGraphParser - BlueprintCreator blueprintCreator = new BlueprintCreatorOnap(); + BlueprintCreator blueprintCreator = new BlueprintCreatorOnap(componentSpecService, blueprintCreatorService, + blueprintService, + fixesService); flowGraphParser = new FlowGraphParser(blueprintCreator); flowGraphParser.parse(flowGraph); } diff --git a/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestOnapBpGen.java b/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestOnapBpGen.java index 60ba323..866d6f6 100644 --- a/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestOnapBpGen.java +++ b/mod/runtimeapi/runtime-core/src/test/java/org/onap/dcae/runtime/core/TestOnapBpGen.java @@ -1,13 +1,14 @@ /*- * ============LICENSE_START======================================================= * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved. + * Copyright (C) 2020 Nokia. All rights reserved. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -18,18 +19,19 @@ package org.onap.dcae.runtime.core; import org.junit.Test; -import org.onap.blueprintgenerator.models.blueprint.Blueprint; -import org.onap.blueprintgenerator.models.componentspec.ComponentSpec; +import org.onap.blueprintgenerator.model.base.Blueprint; +import org.onap.blueprintgenerator.model.common.Input; +import org.onap.blueprintgenerator.model.componentspec.OnapComponentSpec; -public class TestOnapBpGen { +public class TestOnapBpGen extends BpGenTestBase { @Test - public void testOnapBPGeneration() throws Exception{ - ComponentSpec componentSpec = new ComponentSpec(); - componentSpec.createComponentSpecFromString(Helper.loadFileContent( - "src/test/data/compspecs/componentSpec_hello_world_only_MR.json")); - - Blueprint bp = new Blueprint().createBlueprint(componentSpec,"",'d',"",""); - System.out.println(bp.getInputs()); + public void testOnapBPGeneration() throws Exception { + OnapComponentSpec componentSpec = componentSpecService.createComponentSpecFromString( + Helper.loadFileContent("src/test/data/compspecs/componentSpec_hello_world_only_MR.json")); + Input input = new Input(); + input.setBpType("d"); + Blueprint blueprint = blueprintCreatorService.createBlueprint(componentSpec, input); + System.out.println(blueprint.getInputs()); } } -- cgit 1.2.3-korg