/**
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
*/
package com.microsoft.azure.management.resources;
import com.microsoft.azure.management.resources.fluentcore.arm.ResourceId;
import org.junit.Assert;
import org.junit.Test;
/**
* Test class to test ResourceId class.
*/
public class ResourceIdTests {
@Test
public void resourceIdForTopLevelResourceWorksFine() {
ResourceId resourceId = ResourceId.fromString("/subscriptions/9657ab5d-4a4a-4fd2-ae7a-4cd9fbd030ef/resourceGroups/resourceGroupName/providers/Microsoft.Network/applicationGateways/something");
Assert.assertEquals(resourceId.name(), "something");
Assert.assertEquals(resourceId.subscriptionId(), "9657ab5d-4a4a-4fd2-ae7a-4cd9fbd030ef");
Assert.assertEquals(resourceId.resourceGroupName(), "resourceGroupName");
Assert.assertEquals(resourceId.providerNamespace(), "Microsoft.Network");
Assert.assertEquals(resourceId.resourceType(), "applicationGateways");
Assert.assertEquals(resourceId.fullResourceType(), "Microsoft.Network/applicationGateways");
Assert.assertNull(resourceId.parent());
}
@Test
public void resourceIdForChildLevelResourceWorksFine() {
ResourceId resourceId = ResourceId.fromString("/subscriptions/9657ab5d-4a4a-4fd2-ae7a-4cd9fbd030ef/resourceGroups/resourceGroupName/providers/Microsoft.Network/applicationGateways/something/someChildType/childName");
Assert.assertEquals(resourceId.name(), "childName");
Assert.assertEquals(resourceId.subscriptionId(), "9657ab5d-4a4a-4fd2-ae7a-4cd9fbd030ef");
Assert.assertEquals(resourceId.resourceGroupName(), "resourceGroupName");
Assert.assertEquals(resourceId.providerNamespace(), "Microsoft.Network");
Assert.assertEquals(resourceId.resourceType(), "someChildType");
Assert.assertEquals(resourceId.fullResourceType(), "Microsoft.Network/applicationGateways/someChildType");
Assert.assertNotNull(resourceId.parent());
Assert.assertEquals(resourceId.parent().name(), "something");
Assert.assertEquals(resourceId.parent().subscriptionId(), "9657ab5d-4a4a-4fd2-ae7a-4cd9fbd030ef");
Assert.assertEquals(resourceId.parent().resourceGroupName(), "resourceGroupName");
Assert.assertEquals(resourceId.parent().name(), "something");
Assert.assertEquals(resourceId.parent().providerNamespace(), "Microsoft.Network");
Assert.assertEquals(resourceId.parent().resourceType(), "applicationGateways");
Assert.assertEquals(resourceId.parent().fullResourceType(), "Microsoft.Network/applicationGateways");
}
@Test
public void resourceIdForGrandChildLevelResourceWorksFine() {
ResourceId resourceId = ResourceId.fromString("/subscriptions/9657ab5d-4a4a-4fd2-ae7a-4cd9fbd030ef/resourceGroups/resourceGroupName/providers/Microsoft.Network/applicationGateways/something/someChildType/childName/grandChildType/grandChild");
Assert.assertEquals(resourceId.name(), "grandChild");
Assert.assertEquals(resourceId.subscriptionId(), "9657ab5d-4a4a-4fd2-ae7a-4cd9fbd030ef");
Assert.assertEquals(resourceId.resourceGroupName(), "resourceGroupName");
Assert.assertEquals(resourceId.providerNamespace(), "Microsoft.Network");
Assert.assertEquals(resourceId.resourceType(), "grandChildType");
Assert.assertEquals(resourceId.fullResourceType(), "Microsoft.Network/applicationGateways/someChildType/grandChildType");
Assert.assertNotNull(resourceId.parent());
Assert.assertEquals(resourceId.parent().name(), "childName");
Assert.assertEquals(resourceId.parent().subscriptionId(), "9657ab5d-4a4a-4fd2-ae7a-4cd9fbd030ef");
Assert.assertEquals(resourceId.parent().resourceGroupName(), "resourceGroupName");
Assert.assertEquals(resourceId.parent().providerNamespace(), "Microsoft.Network");
Assert.assertEquals(resourceId.parent().resourceType(), "someChildType");
Assert.assertEquals(resourceId.parent().fullResourceType(), "Microsoft.Network/applicationGateways/someChildType");
Assert.assertNotNull(resourceId.parent().parent());
Assert.assertEquals(resourceId.parent().parent().name(), "something");
Assert.assertEquals(resourceId.parent().parent().subscriptionId(), "9657ab5d-4a4a-4fd2-ae7a-4cd9fbd030ef");
Assert.assertEquals(resourceId.parent().parent().resourceGroupName(), "resourceGroupName");
Assert.assertEquals(resourceId.parent().parent().name(), "something");
Assert.assertEquals(resourceId.parent().parent().providerNamespace(), "Microsoft.Network");
Assert.assertEquals(resourceId.parent().parent().resourceType(), "applicationGateways");
Assert.assertEquals(resourceId.parent().parent().fullResourceType(), "Microsoft.Network/applicationGateways");
}
}