From f518411876d6830d83d051a915f0b21bdfdcb43e Mon Sep 17 00:00:00 2001 From: "Sanchez, Gabriel (gs882h)" Date: Mon, 18 Jun 2018 17:30:21 +0100 Subject: Add multi-oxm using schemaIngest library Use the schemaIngest library to have the capability to deal with multiple OXM files Issue-ID: AAI-1192 Change-Id: Icbebbf475bcf9fc3808bc79b9fa95085db46ab77 Signed-off-by: gabriel sanchez --- .../aai/datarouter/schema/OxmModelLoaderTest.java | 68 ++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 src/test/java/org/onap/aai/datarouter/schema/OxmModelLoaderTest.java (limited to 'src/test/java') diff --git a/src/test/java/org/onap/aai/datarouter/schema/OxmModelLoaderTest.java b/src/test/java/org/onap/aai/datarouter/schema/OxmModelLoaderTest.java new file mode 100644 index 0000000..a92d739 --- /dev/null +++ b/src/test/java/org/onap/aai/datarouter/schema/OxmModelLoaderTest.java @@ -0,0 +1,68 @@ +/** + * ============LICENSE_START======================================================= + * org.onap.aai + * ================================================================================ + * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved. + * Copyright © 2017-2018 Amdocs + * ================================================================================ + * 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.aai.datarouter.schema; + +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; +import java.util.ArrayList; +import org.eclipse.persistence.dynamic.DynamicType; +import org.eclipse.persistence.internal.helper.DatabaseField; +import org.eclipse.persistence.jaxb.dynamic.DynamicJAXBContext; +import org.eclipse.persistence.mappings.DatabaseMapping; +import org.junit.Test; +import org.onap.aai.datarouter.schema.OxmModelLoader; +import org.onap.aai.datarouter.util.EntityOxmReferenceHelper; +import org.onap.aai.datarouter.util.ExternalOxmModelProcessor; +import org.onap.aai.setup.Version; + +public class OxmModelLoaderTest { + + @Test + public void testLoadingMultipleOxmFiles() { + ArrayList externalOxmModelProcessors = new ArrayList(); + externalOxmModelProcessors.add(EntityOxmReferenceHelper.getInstance()); + OxmModelLoader.registerExternalOxmModelProcessors(externalOxmModelProcessors); + OxmModelLoader.loadModels(); + + DynamicJAXBContext jaxbContext = OxmModelLoader.getContextForVersion(Version.getLatest().toString()); + + DynamicType pserver = jaxbContext.getDynamicType("Pserver"); + DynamicType genericVnf = jaxbContext.getDynamicType("GenericVnf"); + + assertNotNull(pserver); + assertNotNull(genericVnf); + + DatabaseMapping mapping = pserver.getDescriptor().getMappings().firstElement(); + if (mapping.isAbstractDirectMapping()) { + DatabaseField f = mapping.getField(); + String keyName = f.getName().substring(0, f.getName().indexOf("/")); + assertTrue(keyName.equals("hostname")); + } + + mapping = genericVnf.getDescriptor().getMappings().firstElement(); + if (mapping.isAbstractDirectMapping()) { + DatabaseField f = mapping.getField(); + String keyName = f.getName().substring(0, f.getName().indexOf("/")); + assertTrue(keyName.equals("vnf-id")); + } + + } +} -- cgit 1.2.3-korg