08035008f8cd9264226e461a8107daa01c370392
[policy/models.git] / models-tosca / src / test / java / org / onap / policy / models / tosca / authorative / concepts / ToscaPolicyTest.java
1 /*
2  * ============LICENSE_START=======================================================
3  * ONAP Policy Models
4  * ================================================================================
5  * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
6  * Modifications Copyright (C) 2020 Nordix Foundation.
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
22 package org.onap.policy.models.tosca.authorative.concepts;
23
24 import static org.assertj.core.api.Assertions.assertThatThrownBy;
25 import static org.junit.Assert.assertEquals;
26
27 import java.util.LinkedHashMap;
28
29 import org.junit.Test;
30
31 /**
32  * Tests methods not tested by {@link PojosTest}.
33  */
34 public class ToscaPolicyTest {
35
36     @Test
37     public void testGetIdentifier_testGetTypeIdentifier() {
38         assertThatThrownBy(() -> {
39             new ToscaPolicy(null);
40         }).hasMessageMatching("copyObject is marked .*on.*ull but is null");
41
42         ToscaPolicy policy = new ToscaPolicy();
43
44         policy.setName("my_name");
45         policy.setVersion("1.2.3");
46         policy.setType("my_type");
47         policy.setTypeVersion("3.2.1");
48
49         assertEquals("ToscaEntityKey(name=my_name, version=1.2.3)", policy.getKey().toString());
50
51         ToscaPolicyIdentifier ident = policy.getIdentifier();
52         assertEquals("my_name", ident.getName());
53         assertEquals("1.2.3", ident.getVersion());
54
55         ToscaPolicyTypeIdentifier type = policy.getTypeIdentifier();
56         assertEquals("my_type", type.getName());
57         assertEquals("3.2.1", type.getVersion());
58
59         ToscaPolicy clonedPolicy0 = new ToscaPolicy(policy);
60         assertEquals(0, policy.compareTo(clonedPolicy0));
61
62         policy.setProperties(new LinkedHashMap<String, Object>());
63         policy.getProperties().put("PropertyKey", "PropertyValue");
64         ToscaPolicy clonedPolicy1 = new ToscaPolicy(policy);
65         assertEquals(0, policy.compareTo(clonedPolicy1));
66     }
67 }