d5999b8545e7cb611a3277857f1ed4b9fbd3c72e
[aai/search-data-service.git] / src / test / java / org / onap / aai / sa / rest / BulkRequestTest.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.sa.rest;\r
22 \r
23 import org.junit.Assert;\r
24 import org.junit.Test;\r
25 import org.junit.runner.RunWith;\r
26 import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;\r
27 import org.springframework.boot.test.context.SpringBootTest;\r
28 import org.springframework.test.context.junit4.SpringRunner;\r
29 \r
30 @RunWith(SpringRunner.class)\r
31 @SpringBootTest\r
32 @AutoConfigureMockMvc\r
33 public class BulkRequestTest {\r
34 \r
35     @Test\r
36     public void testBulkRequest_Delete() {\r
37         BulkRequest request = new BulkRequest();\r
38         BulkOperation operation = new BulkOperation();\r
39         Document document = new Document();\r
40         BulkMetaData metaData = getMetaData();\r
41         operation.setMetaData(metaData);\r
42         operation.setDocument(document);\r
43         Assert.assertNotNull(operation.getDocument());\r
44         Assert.assertNotNull(operation.getMetaData());\r
45         Assert.assertNotNull(operation.toString());\r
46 \r
47         request.setDelete(operation);\r
48         Assert.assertNotNull(request.getDelete());\r
49         Assert.assertEquals(operation, request.getOperation());\r
50         Assert.assertEquals(BulkRequest.OperationType.DELETE, request.getOperationType());\r
51         Assert.assertTrue(request.toString().contains("delete:"));\r
52 \r
53 \r
54     }\r
55 \r
56     @Test\r
57     public void testBulkRequest_Update() {\r
58         BulkRequest request = new BulkRequest();\r
59         BulkOperation operation = new BulkOperation();\r
60         Document document = new Document();\r
61         BulkMetaData metaData = getMetaData();\r
62         operation.setMetaData(metaData);\r
63         operation.setDocument(document);\r
64         Assert.assertNotNull(operation.getDocument());\r
65         Assert.assertNotNull(operation.getMetaData());\r
66         Assert.assertNotNull(operation.toString());\r
67 \r
68         request.setUpdate(operation);\r
69         Assert.assertNotNull(request.getUpdate());\r
70         Assert.assertEquals(operation, request.getOperation());\r
71         Assert.assertEquals(BulkRequest.OperationType.UPDATE, request.getOperationType());\r
72         Assert.assertTrue(request.toString().contains("update:"));\r
73 \r
74     }\r
75 \r
76     @Test\r
77     public void testBulkRequest_Create() {\r
78         BulkRequest request = new BulkRequest();\r
79         BulkOperation operation = new BulkOperation();\r
80         Document document = new Document();\r
81         BulkMetaData metaData = getMetaData();\r
82         operation.setMetaData(metaData);\r
83         operation.setDocument(document);\r
84         Assert.assertNotNull(operation.getDocument());\r
85         Assert.assertNotNull(operation.getMetaData());\r
86         Assert.assertNotNull(operation.toString());\r
87 \r
88         request.setCreate(operation);\r
89         Assert.assertNotNull(request.getCreate());\r
90         Assert.assertEquals(operation, request.getOperation());\r
91         Assert.assertEquals(BulkRequest.OperationType.CREATE, request.getOperationType());\r
92         Assert.assertTrue(request.toString().contains("create:"));\r
93 \r
94     }\r
95 \r
96     @Test\r
97     public void testBulkRequest_Undefined() {\r
98         BulkRequest request = new BulkRequest();\r
99         Assert.assertNull(request.getOperation());\r
100         Assert.assertNull(request.getOperationType());\r
101         Assert.assertEquals("UNDEFINED", request.toString());\r
102     }\r
103 \r
104     @Test\r
105     public void testGetIndex() {\r
106         BulkRequest request = new BulkRequest();\r
107         BulkOperation operation = new BulkOperation();\r
108         BulkMetaData metaData = new BulkMetaData();\r
109         metaData.setUrl("/test/indexes/index1");\r
110         operation.setMetaData(metaData);\r
111         request.setCreate(operation);\r
112         String index = request.getIndex();\r
113         Assert.assertEquals(index, "index1");\r
114     }\r
115 \r
116     @Test\r
117     public void testGetId() {\r
118         BulkRequest request = new BulkRequest();\r
119         BulkOperation operation = new BulkOperation();\r
120         BulkMetaData metaData = new BulkMetaData();\r
121         metaData.setUrl("/test/documents/document1");\r
122         operation.setMetaData(metaData);\r
123         request.setCreate(operation);\r
124         String index = request.getId();\r
125         Assert.assertEquals(index, "document1");\r
126     }\r
127 \r
128     @Test\r
129     public void testApiUtils() {\r
130         Assert.assertEquals("services/search-data-service/v1/search/indexes/index1", ApiUtils.buildIndexUri("index1"));\r
131         Assert.assertEquals("services/search-data-service/v1/search/indexes/index1/documents/document1",\r
132                 ApiUtils.buildDocumentUri("index1", "document1"));\r
133         Assert.assertTrue(ApiUtils.validateIndexUri("services/search-data-service/v1/search/indexes/index1"));\r
134         Assert.assertTrue(ApiUtils.validateDocumentUri(\r
135                 "services/search-data-service/v1/search/indexes/index1/documents/document1", true));\r
136         Assert.assertTrue(ApiUtils.validateDocumentUri(\r
137                 "services/search-data-service/v1/search/indexes/index1/documents/document1", false));\r
138     }\r
139 \r
140     private BulkMetaData getMetaData() {\r
141         BulkMetaData metaData = new BulkMetaData();\r
142         metaData.setUrl("http://127.0.0.1");\r
143         metaData.setEtag("etag-1");\r
144         Assert.assertEquals(metaData.getUrl(), "http://127.0.0.1");\r
145         Assert.assertEquals(metaData.getEtag(), "etag-1");\r
146         Assert.assertNotNull(metaData.toString());\r
147         return metaData;\r
148     }\r
149 }\r