005cb7641d753460ae5040884a3f70b230843c02
[aai/search-data-service.git] / search-data-service / src / test / java / org / onap / aai / sa / searchdbabstraction / searchapi / DateHistogramAggregationTest.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.searchapi;
22
23 import static org.junit.Assert.assertEquals;
24 import static org.junit.Assert.fail;
25
26 import com.fasterxml.jackson.databind.ObjectMapper;
27 import org.junit.Test;
28
29 public class DateHistogramAggregationTest {
30     ObjectMapper mapper = new ObjectMapper();
31
32     @Test
33     public void testFullSet() {
34         String input = "{\r\n  \"field\": \"mydate\",\r\n  \"interval\": \"day\",\r\n  \"time-zone\": \"-01:00\"\r\n}";
35
36         String expected =
37                 "\"date_histogram\": {\"field\": \"mydate\", \"interval\": \"day\", \"time_zone\": \"-01:00\"}";
38
39         DateHistogramAggregation actual;
40         try {
41             actual = mapper.readValue(input, DateHistogramAggregation.class);
42             assertEquals(expected, actual.toElasticSearch());
43         } catch (Exception e) {
44             fail("Exception occurred: " + e.getMessage());
45         }
46     }
47
48     @Test
49     public void test2() {
50         String input = "{\r\n  \"field\": \"mydate\",\r\n  \"interval\": \"day\"\r\n}";
51
52         String expected = "\"date_histogram\": {\"field\": \"mydate\", \"interval\": \"day\"}";
53
54         DateHistogramAggregation actual;
55         try {
56             actual = mapper.readValue(input, DateHistogramAggregation.class);
57             assertEquals(expected, actual.toElasticSearch());
58         } catch (Exception e) {
59             fail("Exception occurred: " + e.getMessage());
60         }
61     }
62
63     @Test
64     public void test3() {
65         String input = "{\r\n  \"field\": \"mydate\"\r\n}";
66
67         String expected = "\"date_histogram\": {\"field\": \"mydate\"}";
68
69         DateHistogramAggregation actual;
70         try {
71             actual = mapper.readValue(input, DateHistogramAggregation.class);
72             assertEquals(expected, actual.toElasticSearch());
73         } catch (Exception e) {
74             fail("Exception occurred: " + e.getMessage());
75         }
76     }
77
78 }