7a37345f28e4133f3555947cf720a6985f2dd546
[ccsdk/features.git] /
1 /*
2  * ============LICENSE_START=======================================================
3  * ONAP : ccsdk features
4  * ================================================================================
5  * Copyright (C) 2020 highstreet technologies GmbH Intellectual Property.
6  * All rights reserved.
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.ccsdk.features.sdnr.wt.dataprovider.dblib.test;
23
24 import static org.junit.Assert.assertEquals;
25 import org.junit.Test;
26 import org.onap.ccsdk.features.sdnr.wt.dataprovider.database.sqldb.data.entity.DatabaseIdGenerator;
27 import org.onap.ccsdk.features.sdnr.wt.dataprovider.model.types.NetconfTimeStampImpl;
28 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.data.provider.rev201110.GranularityPeriodType;
29 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.data.provider.rev201110.InventoryBuilder;
30 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.data.provider.rev201110.MaintenanceBuilder;
31 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.data.provider.rev201110.NetworkElementConnectionBuilder;
32 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.data.provider.rev201110.Pmdata15mEntity;
33 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.data.provider.rev201110.Pmdata24hEntity;
34
35 public class TestObjectIds {
36
37     private static final String NODEID1 = "nodeid1";
38     private static final String OBJECTID1 = "objectid1";
39     private static final String PROBLEMNAME1 = "problem1";
40     private static final String FAULTCURRENTID1 = String.format("%s/%s/%s", NODEID1, OBJECTID1, PROBLEMNAME1);
41     private static final String EQUIPMENT_UUID1 = "equipment1";
42     private static final String INVENTORY_ID1 = String.format("%s/%s", NODEID1, EQUIPMENT_UUID1);
43     private static final String PM15MUUID1 = "pm15muuid1";
44     private static final String PM24HUUID1 = "pm24huuid1";
45     private static final String TIMESTAMP1 = "2020-05-01T12:55:12.34Z";
46     private static final String PMDATA15MID1 = String.format("%s/%s/%s", NODEID1, PM15MUUID1, TIMESTAMP1);
47     private static final String PMDATA24HID1 = String.format("%s/%s/%s", NODEID1, PM24HUUID1, TIMESTAMP1);
48
49
50     @Test
51     public void testGenerator() {
52         assertEquals(FAULTCURRENTID1, DatabaseIdGenerator.getFaultcurrentId(NODEID1, OBJECTID1, PROBLEMNAME1));
53         assertEquals(INVENTORY_ID1, DatabaseIdGenerator
54                 .getInventoryId(new InventoryBuilder().setNodeId(NODEID1).setUuid(EQUIPMENT_UUID1).build()));
55         assertEquals(NODEID1,
56                 DatabaseIdGenerator.getMaintenanceId(new MaintenanceBuilder().setNodeId(NODEID1).build()));
57         assertEquals(NODEID1, DatabaseIdGenerator.getMaintenanceId(NODEID1));
58         assertEquals(NODEID1, DatabaseIdGenerator.getNetworkelementConnectionId(NODEID1));
59         assertEquals(NODEID1, DatabaseIdGenerator
60                 .getNetworkelementConnectionId(new NetworkElementConnectionBuilder().setNodeId(NODEID1).build()));
61         Pmdata15mEntity e =
62                 new org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.data.provider.rev201110.read.pmdata._15m.list.output.DataBuilder()
63                         .setNodeName(NODEID1).setGranularityPeriod(GranularityPeriodType.Period15Min)
64                         .setUuidInterface(PM15MUUID1)
65                         .setTimeStamp(NetconfTimeStampImpl.getConverter().getTimeStamp(TIMESTAMP1)).build();
66         assertEquals(PMDATA15MID1, DatabaseIdGenerator.getPmData15mId(e));
67         assertEquals(PMDATA15MID1, DatabaseIdGenerator.getPmData15mId(NODEID1, PM15MUUID1, TIMESTAMP1));
68         Pmdata24hEntity e2 =
69                 new org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.data.provider.rev201110.read.pmdata._24h.list.output.DataBuilder()
70                         .setNodeName(NODEID1).setGranularityPeriod(GranularityPeriodType.Period24Hours)
71                         .setUuidInterface(PM24HUUID1)
72                         .setTimeStamp(NetconfTimeStampImpl.getConverter().getTimeStamp(TIMESTAMP1)).build();
73         assertEquals(PMDATA24HID1, DatabaseIdGenerator.getPmData24hId(e2));
74         assertEquals(PMDATA24HID1, DatabaseIdGenerator.getPmData24hId(NODEID1, PM24HUUID1, TIMESTAMP1));
75     }
76 }