5ce6b67604f12cea1d10167d15092456bd1ce191
[policy/apex-pdp.git] /
1 /*-
2  * ============LICENSE_START=======================================================
3  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
4  *  Modifications Copyright (C) 2020,2022 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  *
31  * @author Liam Fallon (liam.fallon@ericsson.com)
32  */
33 public class ApexEditorApiContextAlbumTest {
34     @Test
35     public void testContextAlbumCrud() {
36         final ApexModel apexModel = new ApexModelFactory().createApexModel(null);
37
38         ApexApiResult result = apexModel.validateContextAlbum(null, null);
39         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
40
41         result = apexModel.validateContextAlbum("%%%$£", null);
42         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
43
44         result = apexModel.loadFromFile("src/test/resources/models/PolicyModel.json");
45         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
46
47         result = apexModel.createContextAlbum("MyMap002", "0.0.2", "APPLICATION", "true", "MapType", "0.0.1",
48             "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
49         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
50         result = apexModel.createContextAlbum("MyMap012", "0.1.2", "ZOOBY", "false", "MapType", "0.0.1",
51             "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 012");
52         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
53         result = apexModel.createContextAlbum("MyMap012", "0.1.4", "UNDEFINED", null, "MapType", "0.0.1",
54             "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 014");
55         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
56         result = apexModel.createContextAlbum("MyMap012", null, null, null, null, null, null, null);
57         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
58         result = apexModel.createContextAlbum("MyMap012", null, "EPHEMERAL", null, null, null, null, null);
59         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
60         result = apexModel.createContextAlbum("MyMap012", null, "EPHEMERAL", "false", null, null, null, null);
61         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
62         result = apexModel.createContextAlbum("MyMap012", null, "EPHEMERAL", "false", "", null, null, null);
63         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
64         result = apexModel.createContextAlbum("MyMap012", null, "EPHEMERAL", "false", "+++", null, null, null);
65         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
66         result = apexModel.createContextAlbum("MyMap012", null, "EPHEMERAL", "false", "MapZooby", null, null, null);
67         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
68         result = apexModel.createContextAlbum("MyMap012", null, "EPHEMERAL", "false", "MapType", "--++", null, null);
69         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
70         result = apexModel.createContextAlbum("MyMap012", null, "EPHEMERAL", "false", "MapType", "0.0.2", null, null);
71         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
72         result = apexModel.createContextAlbum("MyMap012", null, "EPHEMERAL", "false", "MapType", "0.0.1", null, null);
73         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
74         result = apexModel.createContextAlbum("MyMap012", null, "EPHEMERAL", "false", "MapType", null, null, null);
75         assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult());
76         result = apexModel.createContextAlbum("MyMap002", "0.0.2", "APPLICATION", "true", "MapType", null,
77             "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
78         assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult());
79         result = apexModel.createContextAlbum("MyMap011", "0.1.2", "APPLICATION", "true", "MapType", "0.0.1",
80             "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
81         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
82
83         result = apexModel.deleteContextAlbum("MyMap012", "0.1.2");
84         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
85         result = apexModel.createContextAlbum("MyMap012", "0.1.2", "ZOOBY", "false", "MapType", "0.0.1",
86             "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 012");
87         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
88
89         result = apexModel.validateContextAlbum(null, null);
90         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
91
92         result = apexModel.updateContextAlbum(null, null, null, null, null, null, null, null);
93         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
94         result = apexModel.updateContextAlbum("MyMap002", "0.0.2", null, null, null, null, null, null);
95         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
96         result = apexModel.updateContextAlbum("MyMap002", "0.0.2", "ZOOBY", "true", null, null, null, null);
97         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
98         result = apexModel.updateContextAlbum("MyMap002", "0.0.2", null, null, null, null,
99             "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
100         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
101         result = apexModel.updateContextAlbum("MyMap012", null, null, null, null, null, null, null);
102         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
103         result = apexModel.updateContextAlbum("MyMap012", null, null, "true", null, null, null, null);
104         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
105         result = apexModel.updateContextAlbum("MyMap012", null, "APPLICATION", null, null, null, null, null);
106         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
107         result = apexModel.updateContextAlbum("MyMap015", null, null, null, null, null, null, null);
108         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
109         result = apexModel.updateContextAlbum("MyMap014", "0.1.5", null, null, null, null, null, null);
110         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
111         result = apexModel.updateContextAlbum("MyMap012", null, "APPLICATION", "false", null, null, null, null);
112         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
113         result = apexModel.updateContextAlbum("MyMap012", null, "APPLICATION", "false", "StringType", null, null, null);
114         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
115         result = apexModel.updateContextAlbum("MyMap012", null, "APPLICATION", "false", "String", null, null, null);
116         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
117         result = apexModel.updateContextAlbum("MyMap012", null, "APPLICATION", "false", "StringType", "0.0.2", null,
118             null);
119         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
120         result = apexModel.updateContextAlbum("MyMap012", null, "APPLICATION", "false", "StringType", "0.0.1", null,
121             null);
122         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
123         result = apexModel.updateContextAlbum("MyMap012", null, "APPLICATION", "Hello", "StringType", "0.0.1", null,
124             null);
125         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
126
127         result = apexModel.listContextAlbum("@£%%$", null);
128         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
129
130         result = apexModel.listContextAlbum(null, null);
131         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
132         result = apexModel.listContextAlbum("MyMap012", null);
133         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
134         result = apexModel.listContextAlbum("MyMap012", "0.0.2");
135         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
136         result = apexModel.listContextAlbum("MyMap012", "0.2.5");
137         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
138         result = apexModel.listContextAlbum("MyMap014", null);
139         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
140
141         result = apexModel.deleteContextAlbum("@£%%$", null);
142         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
143
144         result = apexModel.deleteContextAlbum("MyMap012", "0.1.1");
145         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
146
147         result = apexModel.deleteContextAlbum("MyMap012oooo", null);
148         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
149
150         result = apexModel.listContextAlbum("MyMap012", null);
151         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
152         assertEquals(3, result.getMessages().size());
153
154         result = apexModel.deleteContextAlbum("MyMap012", "0.1.2");
155         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
156
157         result = apexModel.listContextAlbum("MyMap012", null);
158         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
159         assertEquals(2, result.getMessages().size());
160
161         result = apexModel.deleteContextAlbum("MyMap012", null);
162         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
163         assertEquals(2, result.getMessages().size());
164
165         result = apexModel.listContextAlbum("MyMap012", null);
166         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
167
168         result = apexModel.deleteContextAlbum(null, null);
169         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
170         assertEquals(4, result.getMessages().size());
171
172         result = apexModel.listContextAlbum(null, null);
173         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
174         assertEquals(0, result.getMessages().size());
175     }
176 }