e6ed351ae410866a8cdece60fb688a8a470d606d
[policy/apex-pdp.git] /
1 /*-
2  * ============LICENSE_START=======================================================
3  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
4  *  Modifications Copyright (C) 2020 Nordix Foundation.
5  * ================================================================================
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  *      http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  *
18  * SPDX-License-Identifier: Apache-2.0
19  * ============LICENSE_END=========================================================
20  */
21
22 package org.onap.policy.apex.model.modelapi;
23
24 import static org.junit.Assert.assertEquals;
25
26 import org.junit.Test;
27
28 /**
29  * Context album for API tests.
30  * @author Liam Fallon (liam.fallon@ericsson.com)
31  */
32 public class ApexEditorApiContextAlbumTest {
33     @Test
34     public void testContextAlbumCrud() {
35         final ApexModel apexModel = new ApexModelFactory().createApexModel(null, false);
36
37         ApexApiResult result = apexModel.validateContextAlbum(null, null);
38         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
39
40         result = apexModel.validateContextAlbum("%%%$£", null);
41         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
42
43         result = apexModel.loadFromFile("src/test/resources/models/PolicyModel.json");
44         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
45
46         result = apexModel.createContextAlbum("MyMap002", "0.0.2", "APPLICATION", "true", "MapType", "0.0.1",
47                 "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
48         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
49         result = apexModel.createContextAlbum("MyMap012", "0.1.2", "ZOOBY", "false", "MapType", "0.0.1",
50                 "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 012");
51         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
52         result = apexModel.createContextAlbum("MyMap012", "0.1.4", "UNDEFINED", null, "MapType", "0.0.1",
53                 "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 014");
54         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
55         result = apexModel.createContextAlbum("MyMap012", null, null, null, null, null, null, null);
56         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
57         result = apexModel.createContextAlbum("MyMap012", null, "EPHEMERAL", null, null, null, null, null);
58         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
59         result = apexModel.createContextAlbum("MyMap012", null, "EPHEMERAL", "false", null, null, null, null);
60         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
61         result = apexModel.createContextAlbum("MyMap012", null, "EPHEMERAL", "false", "", null, null, null);
62         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
63         result = apexModel.createContextAlbum("MyMap012", null, "EPHEMERAL", "false", "+++", null, null, null);
64         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
65         result = apexModel.createContextAlbum("MyMap012", null, "EPHEMERAL", "false", "MapZooby", null, null, null);
66         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
67         result = apexModel.createContextAlbum("MyMap012", null, "EPHEMERAL", "false", "MapType", "--++", null, null);
68         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
69         result = apexModel.createContextAlbum("MyMap012", null, "EPHEMERAL", "false", "MapType", "0.0.2", null, null);
70         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
71         result = apexModel.createContextAlbum("MyMap012", null, "EPHEMERAL", "false", "MapType", "0.0.1", null, null);
72         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
73         result = apexModel.createContextAlbum("MyMap012", null, "EPHEMERAL", "false", "MapType", null, null, null);
74         assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult());
75         result = apexModel.createContextAlbum("MyMap002", "0.0.2", "APPLICATION", "true", "MapType", null,
76                 "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
77         assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult());
78         result = apexModel.createContextAlbum("MyMap011", "0.1.2", "APPLICATION", "true", "MapType", "0.0.1",
79                 "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
80         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
81
82         result = apexModel.deleteContextAlbum("MyMap012", "0.1.2");
83         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
84         result = apexModel.createContextAlbum("MyMap012", "0.1.2", "ZOOBY", "false", "MapType", "0.0.1",
85                 "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 012");
86         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
87
88         result = apexModel.validateContextAlbum(null, null);
89         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
90
91         result = apexModel.updateContextAlbum(null, null, null, null, null, null, null, null);
92         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
93         result = apexModel.updateContextAlbum("MyMap002", "0.0.2", null, null, null, null, null, null);
94         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
95         result = apexModel.updateContextAlbum("MyMap002", "0.0.2", "ZOOBY", "true", null, null, null, null);
96         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
97         result = apexModel.updateContextAlbum("MyMap002", "0.0.2", null, null, null, null,
98                 "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
99         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
100         result = apexModel.updateContextAlbum("MyMap012", null, null, null, null, null, null, null);
101         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
102         result = apexModel.updateContextAlbum("MyMap012", null, null, "true", null, null, null, null);
103         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
104         result = apexModel.updateContextAlbum("MyMap012", null, "APPLICATION", null, null, null, null, null);
105         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
106         result = apexModel.updateContextAlbum("MyMap015", null, null, null, null, null, null, null);
107         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
108         result = apexModel.updateContextAlbum("MyMap014", "0.1.5", null, null, null, null, null, null);
109         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
110         result = apexModel.updateContextAlbum("MyMap012", null, "APPLICATION", "false", null, null, null, null);
111         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
112         result = apexModel.updateContextAlbum("MyMap012", null, "APPLICATION", "false", "StringType", null, null, null);
113         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
114         result = apexModel.updateContextAlbum("MyMap012", null, "APPLICATION", "false", "String", null, null, null);
115         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
116         result = apexModel.updateContextAlbum("MyMap012", null, "APPLICATION", "false", "StringType", "0.0.2", null,
117                 null);
118         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
119         result = apexModel.updateContextAlbum("MyMap012", null, "APPLICATION", "false", "StringType", "0.0.1", null,
120                 null);
121         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
122         result = apexModel.updateContextAlbum("MyMap012", null, "APPLICATION", "Hello", "StringType", "0.0.1", null,
123                 null);
124         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
125
126         result = apexModel.listContextAlbum("@£%%$", null);
127         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
128
129         result = apexModel.listContextAlbum(null, null);
130         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
131         result = apexModel.listContextAlbum("MyMap012", null);
132         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
133         result = apexModel.listContextAlbum("MyMap012", "0.0.2");
134         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
135         result = apexModel.listContextAlbum("MyMap012", "0.2.5");
136         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
137         result = apexModel.listContextAlbum("MyMap014", null);
138         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
139
140         result = apexModel.deleteContextAlbum("@£%%$", null);
141         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
142
143         result = apexModel.deleteContextAlbum("MyMap012", "0.1.1");
144         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
145
146         result = apexModel.deleteContextAlbum("MyMap012oooo", null);
147         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
148
149         result = apexModel.listContextAlbum("MyMap012", null);
150         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
151         assertEquals(3, result.getMessages().size());
152
153         result = apexModel.deleteContextAlbum("MyMap012", "0.1.2");
154         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
155
156         result = apexModel.listContextAlbum("MyMap012", null);
157         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
158         assertEquals(2, result.getMessages().size());
159
160         result = apexModel.deleteContextAlbum("MyMap012", null);
161         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
162
163         result = apexModel.listContextAlbum("MyMap012", null);
164         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
165
166         result = apexModel.deleteContextAlbum(null, null);
167         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
168         assertEquals(4, result.getMessages().size());
169
170         result = apexModel.listContextAlbum(null, null);
171         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
172         assertEquals(0, result.getMessages().size());
173     }
174 }