X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=src%2Ftest%2Fjava%2Forg%2Fopenecomp%2Fmodelloader%2Fentity%2Fmodel%2FModelSorterTest.java;h=fdc81dad7dd9117ebdde8add8def14be256a84a4;hb=fe17f093d5c61207949eebef95b83baf5139be50;hp=dea537f73d835ad34f651e7980ea1e19598d5746;hpb=ef768a7c864f0d807d8696449f5eed7a4552316f;p=aai%2Fmodel-loader.git diff --git a/src/test/java/org/openecomp/modelloader/entity/model/ModelSorterTest.java b/src/test/java/org/openecomp/modelloader/entity/model/ModelSorterTest.java index dea537f..fdc81da 100644 --- a/src/test/java/org/openecomp/modelloader/entity/model/ModelSorterTest.java +++ b/src/test/java/org/openecomp/modelloader/entity/model/ModelSorterTest.java @@ -1,23 +1,25 @@ -/*- +/** * ============LICENSE_START======================================================= - * MODEL LOADER SERVICE + * Model Loader * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * Copyright © 2017 AT&T Intellectual Property. + * Copyright © 2017 Amdocs + * 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 - * + * 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========================================================= + * + * ECOMP and OpenECOMP are trademarks + * and service marks of AT&T Intellectual Property. */ - package org.openecomp.modelloader.entity.model; import static org.junit.Assert.assertEquals; @@ -52,8 +54,9 @@ public class ModelSorterTest { List modelList = new ArrayList(); ModelArtifact model = new ModelArtifact(); - model.setNameVersionId("aaaaa"); - model.addDependentModelId("xyz"); + model.setModelInvariantId("aaa"); + model.setModelVerId("111"); + model.addDependentModelId("xyz|123"); modelList.add(model); ModelSorter sorter = new ModelSorter(); @@ -79,15 +82,18 @@ public class ModelSorterTest { List modelList = new ArrayList(); ModelArtifact aaaa = new ModelArtifact(); - aaaa.setNameVersionId("aaaa"); - aaaa.addDependentModelId("cccc"); + aaaa.setModelInvariantId("aaaa"); + aaaa.setModelVerId("mvaaaa"); + aaaa.addDependentModelId("cccc|mvcccc"); ModelArtifact bbbb = new ModelArtifact(); - bbbb.setNameVersionId("bbbb"); - bbbb.addDependentModelId("aaaa"); + bbbb.setModelInvariantId("bbbb"); + bbbb.setModelVerId("mvbbbb"); + bbbb.addDependentModelId("aaaa|mvaaaa"); ModelArtifact cccc = new ModelArtifact(); - cccc.setNameVersionId("cccc"); + cccc.setModelInvariantId("cccc"); + cccc.setModelVerId("mvcccc"); modelList.add(aaaa); modelList.add(bbbb); @@ -104,19 +110,89 @@ public class ModelSorterTest { assertEquals(aaaa, sortedList.get(1)); assertEquals(bbbb, sortedList.get(2)); } + + @Test + public void multipleModelsV8() { + + List modelList = new ArrayList(); + + ModelV8Artifact aaaa = new ModelV8Artifact(); + aaaa.setModelNameVersionId("aaaa"); + aaaa.addDependentModelId("cccc"); + + ModelV8Artifact bbbb = new ModelV8Artifact(); + bbbb.setModelNameVersionId("bbbb"); + bbbb.addDependentModelId("aaaa"); + + ModelV8Artifact cccc = new ModelV8Artifact(); + cccc.setModelNameVersionId("cccc"); + + modelList.add(aaaa); + modelList.add(bbbb); + modelList.add(cccc); + + ModelSorter sorter = new ModelSorter(); + sorter = new ModelSorter(); + + List sortedList = sorter.sort(modelList); + assertNotNull(sortedList); + assertEquals(3, sortedList.size()); + assertEquals(cccc, sortedList.get(0)); + assertEquals(aaaa, sortedList.get(1)); + assertEquals(bbbb, sortedList.get(2)); + } + + @Test + public void multipleModelsAndNamedQueries() { + + List modelList = new ArrayList(); + + ModelArtifact aaaa = new ModelArtifact(); + aaaa.setModelInvariantId("aaaa"); + aaaa.setModelVerId("1111"); + aaaa.addDependentModelId("cccc|2222"); + + NamedQueryArtifact nq1 = new NamedQueryArtifact(); + nq1.setNamedQueryUuid("nq1"); + nq1.addDependentModelId("aaaa|1111"); + + NamedQueryArtifact nq2 = new NamedQueryArtifact(); + nq2.setNamedQueryUuid("nq2"); + nq2.addDependentModelId("existing-model"); + + + modelList.add(nq1); + modelList.add(nq2); + modelList.add(aaaa); + + ModelSorter sorter = new ModelSorter(); + sorter = new ModelSorter(); + + List sortedList = sorter.sort(modelList); + assertNotNull(sortedList); + assertEquals(3, sortedList.size()); + + System.out.println(sortedList.get(0) + "-" + sortedList.get(1) + "-" + sortedList.get(2)); + assertEquals(aaaa, sortedList.get(0)); + assertEquals(nq2, sortedList.get(1)); + assertEquals(nq1, sortedList.get(2)); + } + @Test(expected = RuntimeException.class) public void circularDependency() { List modelList = new ArrayList(); ModelArtifact aaaa = new ModelArtifact(); - aaaa.setNameVersionId("aaaa"); - aaaa.addDependentModelId("bbbb"); + aaaa.setModelInvariantId("aaaa"); + aaaa.setModelVerId("1111"); + aaaa.addDependentModelId("bbbb|1111"); ModelArtifact bbbb = new ModelArtifact(); - bbbb.setNameVersionId("bbbb"); - bbbb.addDependentModelId("aaaa"); + bbbb.setModelInvariantId("bbbb"); + bbbb.setModelVerId("1111"); + bbbb.addDependentModelId("aaaa|1111"); modelList.add(aaaa); modelList.add(bbbb); @@ -126,7 +202,7 @@ public class ModelSorterTest { List sortedList = sorter.sort(modelList); assertNotNull(sortedList); - assertEquals(3, sortedList.size()); + assertEquals(2, sortedList.size()); }