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
10 * http://www.apache.org/licenses/LICENSE-2.0
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.
18 * SPDX-License-Identifier: Apache-2.0
19 * ============LICENSE_END=========================================================
22 package org.onap.policy.apex.model.modelapi;
24 import static org.junit.Assert.assertEquals;
26 import org.junit.Test;
29 * Context album for API tests.
30 * @author Liam Fallon (liam.fallon@ericsson.com)
32 public class ApexEditorApiContextAlbumTest {
34 public void testContextAlbumCrud() {
35 final ApexModel apexModel = new ApexModelFactory().createApexModel(null, false);
37 ApexApiResult result = apexModel.validateContextAlbum(null, null);
38 assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
40 result = apexModel.validateContextAlbum("%%%$£", null);
41 assertEquals(ApexApiResult.Result.FAILED, result.getResult());
43 result = apexModel.loadFromFile("src/test/resources/models/PolicyModel.json");
44 assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
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());
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());
88 result = apexModel.validateContextAlbum(null, null);
89 assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
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,
118 assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
119 result = apexModel.updateContextAlbum("MyMap012", null, "APPLICATION", "false", "StringType", "0.0.1", null,
121 assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
122 result = apexModel.updateContextAlbum("MyMap012", null, "APPLICATION", "Hello", "StringType", "0.0.1", null,
124 assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
126 result = apexModel.listContextAlbum("@£%%$", null);
127 assertEquals(ApexApiResult.Result.FAILED, result.getResult());
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());
140 result = apexModel.deleteContextAlbum("@£%%$", null);
141 assertEquals(ApexApiResult.Result.FAILED, result.getResult());
143 result = apexModel.deleteContextAlbum("MyMap012", "0.1.1");
144 assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
146 result = apexModel.deleteContextAlbum("MyMap012oooo", null);
147 assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
149 result = apexModel.listContextAlbum("MyMap012", null);
150 assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
151 assertEquals(3, result.getMessages().size());
153 result = apexModel.deleteContextAlbum("MyMap012", "0.1.2");
154 assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
156 result = apexModel.listContextAlbum("MyMap012", null);
157 assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
158 assertEquals(2, result.getMessages().size());
160 result = apexModel.deleteContextAlbum("MyMap012", null);
161 assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
163 result = apexModel.listContextAlbum("MyMap012", null);
164 assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
166 result = apexModel.deleteContextAlbum(null, null);
167 assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
168 assertEquals(4, result.getMessages().size());
170 result = apexModel.listContextAlbum(null, null);
171 assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
172 assertEquals(0, result.getMessages().size());