073e1d3b32b5bf5fe5e0fd39e6b743724002a183
[aai/gizmo.git] / src / test / java / org / onap / schema / EdgeRulesLoaderTest.java
1 /**
2  * ============LICENSE_START=======================================================
3  * org.onap.aai
4  * ================================================================================
5  * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
6  * Copyright © 2017-2018 Amdocs
7  * ================================================================================
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  *       http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  * ============LICENSE_END=========================================================
20  */
21 package org.onap.schema;
22
23 import org.junit.Test;
24 import org.onap.crud.exception.CrudException;
25
26 import java.util.ArrayList;
27 import java.util.HashMap;
28 import java.util.Map;
29
30 import static org.junit.Assert.*;
31
32 public class EdgeRulesLoaderTest {
33
34     @Test
35     public void loadModels() throws Exception {
36         EdgeRulesLoader.loadModels();
37         assertTrue(EdgeRulesLoader.getSchemaForVersion ( "v11" ).isValidType ( "org.onap.relationships.inventory.groupsResourcesIn" ));
38     }
39
40     @Test
41     public void loadModelsWithAVersion() throws Exception {
42         EdgeRulesLoader.resetSchemaVersionContext ();
43         EdgeRulesLoader.loadModels("V11");
44         assertEquals(1, EdgeRulesLoader.getSchemas ().size ());
45         assertEquals("v11", EdgeRulesLoader.getLatestSchemaVersion ());
46     }
47
48     @Test
49     public void getSchemaForVersion() throws Exception {
50         EdgeRulesLoader.resetSchemaVersionContext ();
51         EdgeRulesLoader.loadModels("v11");
52         String version = EdgeRulesLoader.getLatestSchemaVersion();
53         RelationshipSchema g = EdgeRulesLoader.getSchemaForVersion(version);
54         assertNotNull(g.lookupRelationType("org.onap.relationships.inventory.groupsResourcesIn"));
55         assertNotNull(g.lookupRelation("U:V:org.onap.relationships.inventory.groupsResourcesIn"));
56         assertNull(g.lookupRelation("U:W:org.onap.relationships.inventory.groupsResourcesIn"));
57     }
58
59
60     @Test
61     public void getSchemaForVersionFail() throws Exception {
62         EdgeRulesLoader.loadModels();
63         try {
64             EdgeRulesLoader.getSchemaForVersion("v1");
65         } catch (CrudException e) {
66             assertEquals(404, e.getHttpStatus().getStatusCode());
67         }
68     }
69 }