Skip to content

Commit 8699c19

Browse files
author
Vlad Cananau
committed
Fix Get-AzureRmTrafficManagerProfile not populating some endpoint properties
1 parent 99556dd commit 8699c19

File tree

5 files changed

+724
-0
lines changed

5 files changed

+724
-0
lines changed

src/ResourceManager/TrafficManager/Commands.TrafficManager2.Test/Commands.TrafficManager.Test.csproj

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,9 @@
142142
<None Include="SessionRecords\**\*.json">
143143
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
144144
</None>
145+
<None Include="SessionRecords\Microsoft.Azure.Commands.TrafficManager.Test.ScenarioTests.NestedEndpointsTests\TestProfileWithNestedEndpointsGetPut.json">
146+
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
147+
</None>
145148
</ItemGroup>
146149
<ItemGroup>
147150
<ProjectReference Include="..\..\..\Common\Commands.Common\Commands.Common.csproj">

src/ResourceManager/TrafficManager/Commands.TrafficManager2.Test/ScenarioTests/NestedEndpointsTests.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,12 @@ public void TestNestedEndpointsCreateUpdate()
2525
{
2626
TestController.NewInstance.RunPowerShellTest("Test-NestedEndpointsCreateUpdate");
2727
}
28+
29+
[Fact]
30+
[Trait(Category.AcceptanceType, Category.CheckIn)]
31+
public void TestProfileWithNestedEndpointsGetPut()
32+
{
33+
TestController.NewInstance.RunPowerShellTest("Test-ProfileWithNestedEndpointsGetPut");
34+
}
2835
}
2936
}

src/ResourceManager/TrafficManager/Commands.TrafficManager2.Test/ScenarioTests/NestedEndpointsTests.ps1

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,3 +77,45 @@ function Test-NestedEndpointsCreateUpdate
7777
Assert-AreEqual 4 $retrievedParentProfile.Endpoints[1].MinChildEndpoints
7878
Assert-AreEqual "West US" $retrievedParentProfile.Endpoints[1].Location
7979
}
80+
81+
<#
82+
.SYNOPSIS
83+
Tests the Get-Put pattern for a profile with a nested endpoint
84+
#>
85+
function Test-ProfileWithNestedEndpointsGetPut
86+
{
87+
$resourceGroup = TestSetup-CreateResourceGroup
88+
$childProfileName = getAssetName
89+
$childProfileRelativeName = getAssetName
90+
$parentProfileName = getAssetName
91+
$parentProfileRelativeName = getAssetName
92+
93+
$createdChildProfile = New-AzureRmTrafficManagerProfile -Name $childProfileName -ResourceGroupName $resourceGroup.ResourceGroupName -RelativeDnsName $childProfileRelativeName -Ttl 30 -TrafficRoutingMethod "Performance" -MonitorProtocol "HTTP" -MonitorPort 80 -MonitorPath "/testchild.asp"
94+
Assert-NotNull $createdChildProfile.Id
95+
96+
$createdParentProfile = New-AzureRmTrafficManagerProfile -Name $parentProfileName -ResourceGroupName $resourceGroup.ResourceGroupName -RelativeDnsName $parentProfileRelativeName -Ttl 51 -TrafficRoutingMethod "Performance" -MonitorProtocol "HTTPS" -MonitorPort 111 -MonitorPath "/testparent.asp"
97+
$nestedEndpoint = New-AzureRmTrafficManagerEndpoint -Name "MyNestedEndpoint" -ProfileName $parentProfileName -ResourceGroupName $resourceGroup.ResourceGroupName -Type "NestedEndpoints" -TargetResourceId $createdChildProfile.Id -EndpointStatus "Enabled" -EndpointLocation "West Europe" -MinChildEndpoints 1
98+
99+
$retrievedParentProfile = Get-AzureRmTrafficManagerProfile -Name $parentProfileName -ResourceGroupName $resourceGroup.ResourceGroupName
100+
$retrievedParentProfile | Set-AzureRmTrafficManagerProfile
101+
102+
$retrievedParentProfile = Get-AzureRmTrafficManagerProfile -Name $parentProfileName -ResourceGroupName $resourceGroup.ResourceGroupName
103+
104+
Assert-NotNull $retrievedParentProfile
105+
Assert-AreEqual 51 $retrievedParentProfile.Ttl
106+
Assert-AreEqual 111 $retrievedParentProfile.MonitorPort
107+
Assert-AreEqual "HTTPS" $retrievedParentProfile.MonitorProtocol
108+
Assert-AreEqual "/testparent.asp" $retrievedParentProfile.MonitorPath
109+
Assert-AreEqual "Performance" $retrievedParentProfile.TrafficRoutingMethod
110+
111+
Assert-AreEqual 1 $retrievedParentProfile.Endpoints.Count
112+
Assert-AreEqual 1 $retrievedParentProfile.Endpoints[0].MinChildEndpoints
113+
Assert-AreEqual 1 $retrievedParentProfile.Endpoints[0].Weight
114+
Assert-AreEqual 1 $retrievedParentProfile.Endpoints[0].Priority
115+
Assert-AreEqual "Microsoft.Network/trafficManagerProfiles/nestedEndpoints" $retrievedParentProfile.Endpoints[0].Type
116+
Assert-AreEqual "MyNestedEndpoint" $retrievedParentProfile.Endpoints[0].Name
117+
Assert-AreEqual "Enabled" $retrievedParentProfile.Endpoints[0].EndpointStatus
118+
Assert-AreEqual "West Europe" $retrievedParentProfile.Endpoints[0].Location
119+
Assert-AreEqual $createdChildProfile.Id $retrievedParentProfile.Endpoints[0].TargetResourceId
120+
Assert-AreEqual $retrievedParentProfile.Name $retrievedParentProfile.Endpoints[0].ProfileName
121+
}

0 commit comments

Comments
 (0)