ba5cb489df2f4a9ae8830136426ea6979c67ead8
[aai/search-data-service.git] / src / test / java / org / onap / aai / sa / searchdbabstraction / util / ElasticSearchPayloadTranslatorTest.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.aai.sa.searchdbabstraction.util;
22
23 import static org.junit.Assert.assertTrue;
24 import static org.junit.Assert.assertFalse;
25
26 import java.io.File;
27 import java.io.FileInputStream;
28
29 import org.apache.commons.io.IOUtils;
30 import org.junit.Before;
31 import org.junit.Test;
32 import org.onap.aai.sa.rest.TestUtils;
33
34 public class ElasticSearchPayloadTranslatorTest {
35         
36         private final String SIMPLE_DOC_SCHEMA_JSON = "src/test/resources/json/index-mapping.json";
37
38         @Before
39         public void setup() throws Exception {
40                 System.setProperty("CONFIG_HOME", System.getProperty("user.dir")+ File.separator + "src/test/resources/json");
41         }
42         
43         @Test
44         public void testPayloadTranslation() throws Exception {
45                 String expectedErrMsg = "Sample error message for whitespace check";
46                 File schemaFile = new File(SIMPLE_DOC_SCHEMA_JSON);
47             String documentJson = IOUtils.toString(new FileInputStream(schemaFile), "UTF-8");
48             assertTrue(documentJson.contains("\"type\": \"string\""));
49                 assertTrue(documentJson.contains("\"index\": \"analyzed\""));
50                 String translatedPayload = ElasticSearchPayloadTranslator.translateESPayload(documentJson);
51                 assertTrue(translatedPayload.contains("\"type\":\"text\""));
52                 assertTrue(translatedPayload.contains("\"index\":true"));
53                 assertTrue(translatedPayload.contains("\"fielddata\":true"));
54                 assertFalse(documentJson.contains("\"index\":\"analyzed\""));
55                 assertTrue(translatedPayload.contains("\"errMsg\":\""+expectedErrMsg+"\""));
56         }
57 }