Update license date and text
[aai/model-loader.git] / src / test / java / org / onap / aai / modelloader / service / ModelLoaderServiceTest.java
1 /**\r
2  * ============LICENSE_START==========================================\r
3  * org.onap.aai\r
4  * ===================================================================\r
5  * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.\r
6  * Copyright © 2017-2018 Amdocs\r
7  * ===================================================================\r
8  * Licensed under the Apache License, Version 2.0 (the "License");\r
9  * you may not use this file except in compliance with the License.\r
10  * You may obtain a copy of the License at\r
11  *\r
12  *        http://www.apache.org/licenses/LICENSE-2.0\r
13  *\r
14  * Unless required by applicable law or agreed to in writing, software\r
15  * distributed under the License is distributed on an "AS IS" BASIS,\r
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
17  * See the License for the specific language governing permissions and\r
18  * limitations under the License.\r
19  * ============LICENSE_END============================================\r
20  */\r
21 package org.onap.aai.modelloader.service;\r
22 \r
23 import org.junit.Assert;\r
24 import org.junit.Before;\r
25 import org.junit.Test;\r
26 import org.mockito.Mockito;\r
27 \r
28 import javax.servlet.http.HttpServletRequest;\r
29 import javax.ws.rs.core.Response;\r
30 import java.io.File;\r
31 import java.io.IOException;\r
32 import java.lang.reflect.Field;\r
33 import java.lang.reflect.Modifier;\r
34 \r
35 public class ModelLoaderServiceTest {\r
36 \r
37     ModelLoaderService service;\r
38     @Before\r
39     public void init() throws IOException, NoSuchFieldException, IllegalAccessException {\r
40         System.setProperty("AJSC_HOME", new File(".").getCanonicalPath().replace('\\', '/'));\r
41         setFinalStatic(System.getProperty("AJSC_HOME")+"/src/test/resources/model-loader.properties");\r
42         service = new ModelLoaderService();\r
43     }\r
44 \r
45     @Test\r
46     public void testLoadModel(){\r
47         Response response = service.loadModel("model-1");\r
48         Assert.assertNotNull(response);\r
49     }\r
50 \r
51     @Test\r
52     public void testSaveModel(){\r
53         Response response = service.saveModel("model-1", "name-1");\r
54         Assert.assertNotNull(response);\r
55     }\r
56 \r
57     @Test\r
58     public void testIngestModel() throws IOException {\r
59         HttpServletRequest req = Mockito.mock(HttpServletRequest.class);\r
60         Response response = service.ingestModel("model-id-1", req, "payload");\r
61         Assert.assertNotNull(response);\r
62     }\r
63 \r
64     static void setFinalStatic(String fieldValue) throws NoSuchFieldException, SecurityException,\r
65             IllegalArgumentException, IllegalAccessException {\r
66         Field configField = ModelLoaderService.class.getDeclaredField("CONFIG_FILE");\r
67         configField.setAccessible(true);\r
68 \r
69         Field modifiersField = Field.class.getDeclaredField( "modifiers" );\r
70         modifiersField.setAccessible( true );\r
71         modifiersField.setInt( configField, configField.getModifiers() & ~Modifier.FINAL );\r
72 \r
73         configField.set(null, fieldValue);\r
74 \r
75         Field authField = ModelLoaderService.class.getDeclaredField("CONFIG_AUTH_LOCATION");\r
76         authField.setAccessible(true);\r
77 \r
78         Field modifiersField1 = Field.class.getDeclaredField( "modifiers" );\r
79         modifiersField1.setAccessible( true );\r
80         modifiersField1.setInt( authField, authField.getModifiers() & ~Modifier.FINAL );\r
81 \r
82         authField.set(null, System.getProperty("AJSC_HOME"));\r
83     }\r
84 }\r