2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
21 package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
23 import org.junit.Before;
24 import org.junit.Test;
25 import org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataValidationType;
27 import java.io.IOException;
29 import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_DEPENDS_ON_INVALID_DEPENDENCY_CANDIDATE;
30 import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_DEPENDS_ON_MULTIPLE_COMPUTE;
31 import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_DEPENDS_ON_NODES_CONNECTED_IN;
32 import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_DEPENDS_ON_NODES_CONNECTED_IN_AND_OUT;
33 import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_DEPENDS_ON_NODES_CONNECTED_OUT;
34 import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_DEPENDS_ON_NODE_TEMPLATE_TRANSLATION_ORDER_INVARIANCE;
35 import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_DEPENDS_ON_NO_DEPENDENCY;
38 public class DependsOnResourceBaseTranslationlTest extends BaseResourceTranslationTest {
41 public void setUp() throws IOException {
42 // do not delete this function. it prevents the superclass setup from running
46 public void testTranslate() throws Exception {
47 inputFilesPath = "/mock/services/heattotosca/baseResourceTranslation/inputfiles";
48 outputFilesPath = "/mock/services/heattotosca/baseResourceTranslation/expectedoutputfiles";
49 initTranslatorAndTranslate();
54 public void testDependsOnConsolidationNodesConnectedOut() throws Exception {
55 inputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
56 "/nodesConnectedOut/inputfiles";
57 outputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
58 "/nodesConnectedOut/expectedoutputfiles";
59 initTranslatorAndTranslate();
61 validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_DEPENDS_ON,
62 TEST_DEPENDS_ON_NODES_CONNECTED_OUT);
66 public void testDependsOnConsolidationNodesConnectedIn() throws Exception {
67 inputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
68 "/nodesConnectedIn/inputfiles";
69 outputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
70 "/nodesConnectedIn/expectedoutputfiles";
71 initTranslatorAndTranslate();
73 validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_DEPENDS_ON,
74 TEST_DEPENDS_ON_NODES_CONNECTED_IN);
78 public void testDependsOnConsolidationNodesConnectedInAndOut() throws Exception {
79 inputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
80 "/nodesConnectedInOut/inputfiles";
81 outputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
82 "/nodesConnectedInOut/expectedoutputfiles";
83 initTranslatorAndTranslate();
85 validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_DEPENDS_ON,
86 TEST_DEPENDS_ON_NODES_CONNECTED_IN_AND_OUT);
90 public void testDependsOnConsolidationNoDependency() throws Exception {
91 inputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
92 "/noDependency/inputfiles";
93 outputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
94 "/noDependency/expectedoutputfiles";
95 initTranslatorAndTranslate();
97 validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_DEPENDS_ON,
98 TEST_DEPENDS_ON_NO_DEPENDENCY);
102 public void testDependsOnConsolidationInvalidDependencyCandidate() throws Exception {
103 inputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
104 "/noDependency/inputfiles";
105 outputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
106 "/noDependency/expectedoutputfiles";
107 initTranslatorAndTranslate();
109 validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_DEPENDS_ON,
110 TEST_DEPENDS_ON_INVALID_DEPENDENCY_CANDIDATE);
114 public void testDependsOnConsolidationMultipleCompute() throws Exception {
115 inputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
116 "/multiplecompute/inputfiles";
117 outputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource/multiplecompute/expectedoutputfiles";
118 initTranslatorAndTranslate();
120 validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_DEPENDS_ON,
121 TEST_DEPENDS_ON_MULTIPLE_COMPUTE);
125 public void testDependsOnNodeTemplateTranslationOrderInvariance() throws Exception {
126 //Tests that the resource dependency is independent of the order of resource translation
127 inputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
128 "/translationorderinvariance/inputfiles";
129 outputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
130 "/translationorderinvariance/expectedoutputfiles";
131 initTranslatorAndTranslate();
133 validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_DEPENDS_ON,
134 TEST_DEPENDS_ON_NODE_TEMPLATE_TRANSLATION_ORDER_INVARIANCE);
138 public void testDependsOnRemoveDependencyForInvalidCandidates() throws Exception {
139 //Tests the deletion of dependencies of Compute->Compute, Compute->Port, Port->Port,
140 // Port->Compute from the original tosca data model
141 inputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
142 "/removeInvalidDependencyFromTosca/inputfiles";
143 outputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
144 "/removeInvalidDependencyFromTosca/expectedoutputfiles";
145 initTranslatorAndTranslate();