aboutsummaryrefslogtreecommitdiffstats
path: root/graph-inventory/aai-client/src/test/java/org/onap/aaiclient/client/aai/entities/uri/AAIFluentTypeReverseLookupTest.java
blob: 699eac97684d28fcf43fda17be21ad359841aada (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
package org.onap.aaiclient.client.aai.entities.uri;

import static org.junit.Assert.assertEquals;
import org.junit.Test;
import org.onap.aaiclient.client.aai.AAIObjectType;

public class AAIFluentTypeReverseLookupTest {


    @Test
    public void reverseParseEntryUri() {
        String cloudRegion =
                "http://localhost:8888/aai/v38/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}";
        String newvce = "/aai/v9/network/newvces/newvce/{vnf-id2}";

        AAIFluentTypeReverseLookup lookup = new AAIFluentTypeReverseLookup();
        AAIObjectType type = lookup.fromName("cloud-region", cloudRegion);

        assertEquals("cloud-region", type.typeName());
        assertEquals("/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}", type.partialUri());
        assertEquals("/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}",
                type.uriTemplate());

        type = lookup.fromName("newvce", newvce);

        assertEquals("newvce", type.typeName());
        assertEquals("/newvces/newvce/{vnf-id2}", type.partialUri());
        assertEquals("/network/newvces/newvce/{vnf-id2}", type.uriTemplate());

        type = lookup.fromName("unknown-type-of-something", "/some/endpoint");

        assertEquals("unknown", type.typeName());

    }

    @Test
    public void reverseParseTest() {

        String pserverParent =
                "/aai/v9/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{l-interface.interface-name}";
        String cloudRegionParent =
                "http://localhost:8888/aai/v38/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}";
        String newVceParent = "/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{l-interface.interface-name}";


        AAIFluentTypeReverseLookup lookup = new AAIFluentTypeReverseLookup();

        AAIObjectType type = lookup.fromName("l-interface", pserverParent);

        assertEquals("l-interface", type.typeName());
        assertEquals("/l-interfaces/l-interface/{l-interface.interface-name}", type.partialUri());
        assertEquals(
                "/cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{l-interface.interface-name}",
                type.uriTemplate());

        type = lookup.fromName("l-interface", cloudRegionParent);

        assertEquals("l-interface", type.typeName());
        assertEquals("/l-interfaces/l-interface/{l-interface.interface-name}", type.partialUri());
        assertEquals(
                "/cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{l-interface.interface-name}",
                type.uriTemplate());

        type = lookup.fromName("l-interface", newVceParent);

        assertEquals("l-interface", type.typeName());
        assertEquals("/l-interfaces/l-interface/{l-interface.interface-name}", type.partialUri());
        assertEquals("/network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{l-interface.interface-name}",
                type.uriTemplate());



    }
}