/** * ============LICENSE_START========================================== * org.onap.aai * =================================================================== * Copyright © 2017 AT&T Intellectual Property. All rights reserved. * Copyright © 2017 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============================================ * ECOMP is a trademark and service mark of AT&T Intellectual Property. */ package org.onap.aai.champ.core; import static org.junit.Assert.assertTrue; import org.junit.Test; import org.onap.aai.champ.model.ChampElement; import org.onap.aai.champ.model.ChampObject; import org.onap.aai.champ.model.ChampRelationship; public class ChampElementTest { @Test public void testChampElement() { final ChampElement fooElement = new ChampObject.Builder("foo").build(); assertTrue(fooElement.isObject()); assertTrue(!fooElement.isRelationship()); assertTrue(fooElement.asObject() instanceof ChampObject); try { fooElement.asRelationship(); throw new AssertionError("Failed to throw exception when calling asRelationship() on a ChampObject"); } catch (UnsupportedOperationException e) { //Expected } final ChampElement barElement = new ChampObject.Builder("bar").build(); final ChampElement usesElement = new ChampRelationship.Builder(fooElement.asObject(), barElement.asObject(), "uses").build(); assertTrue(usesElement.isRelationship()); assertTrue(!usesElement.isObject()); assertTrue(usesElement.asRelationship() instanceof ChampRelationship); try { usesElement.asObject(); throw new AssertionError("Failed to throw exception when calling asObject() on a ChampRelationship"); } catch (UnsupportedOperationException e) { //Expected } } }