1 package org.onap.aai.rest.search;
3 import static org.junit.Assert.*;
5 import java.util.ArrayList;
7 import org.junit.Before;
10 import com.google.common.collect.Lists;
12 public class GetCustomQueryConfigTest {
14 private String configJson;
17 public void setUp() throws Exception {
18 System.setProperty("AJSC_HOME", ".");
19 System.setProperty("BUNDLECONFIG_DIR", "src/main/resources");
22 configJson = "{\n \"stored-queries\": [{\n" +
23 " \"queryName1\": {\n \"query\": {\n \"required-properties\": [\"prop1\", \"prop2\"],\n \"optional-properties\": [\"prop3\", \"prop4\"]\n },\n \"stored-query\": \"out('blah').has('something','foo')\"\n }\n }, {\n" +
24 " \"queryName2\": {\n \"query\": {\n \"optional-properties\": [\"prop5\"]\n },\n \"stored-query\": \"out('bar').has('stuff','baz')\"\n }\n }, {\n" +
25 " \"queryName3\": {\n \"stored-query\": \"out('bar1').has('stuff','baz1')\"\n }\n }]\n}";
30 public void testGetStoredQueryNameWithOptAndReqProps() {
32 GetCustomQueryConfig getCustomQueryConfig = new GetCustomQueryConfig(configJson);
33 CustomQueryConfig cqc = getCustomQueryConfig.getStoredQuery("queryName1");
35 assertEquals(Lists.newArrayList("prop3", "prop4"), cqc.getQueryOptionalProperties());
36 assertEquals(Lists.newArrayList("prop1", "prop2"), cqc.getQueryRequiredProperties());
37 assertEquals("out('blah').has('something','foo')", cqc.getQuery());
42 public void testGetStoredQueryNameWithOptProps() {
44 GetCustomQueryConfig getCustomQueryConfig = new GetCustomQueryConfig(configJson);
45 CustomQueryConfig cqc = getCustomQueryConfig.getStoredQuery("queryName2");
47 assertEquals(Lists.newArrayList("prop5"), cqc.getQueryOptionalProperties());
48 assertEquals(new ArrayList<String>(), cqc.getQueryRequiredProperties());
49 assertEquals("out('bar').has('stuff','baz')", cqc.getQuery());
54 public void testGetStoredQueryNameWithNoProps() {
56 GetCustomQueryConfig getCustomQueryConfig = new GetCustomQueryConfig(configJson);
57 CustomQueryConfig cqc = getCustomQueryConfig.getStoredQuery("queryName3");
59 assertEquals(new ArrayList<String>(), cqc.getQueryOptionalProperties());
60 assertEquals(new ArrayList<String>(), cqc.getQueryRequiredProperties());
61 assertEquals("out('bar1').has('stuff','baz1')", cqc.getQuery());