Skip to content

Commit bacc224

Browse files
author
Hanyun Tao
committed
add unittest
1 parent 43a1220 commit bacc224

File tree

3 files changed

+2522
-0
lines changed

3 files changed

+2522
-0
lines changed

src/Cdn/Cdn.Test/ScenarioTests/EndpointTests.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,13 @@ public void TestEndpointCrudAndAction()
3535
TestController.NewInstance.RunPowerShellTest(_logger, "Test-EndpointCrudAndAction");
3636
}
3737

38+
[Fact]
39+
[Trait(Category.AcceptanceType, Category.CheckIn)]
40+
public void TestEndpointCreateWithRulesEngine()
41+
{
42+
TestController.NewInstance.RunPowerShellTest(_logger, "Test-EndpointCreateWithRulesEngine");
43+
}
44+
3845
[Fact]
3946
[Trait(Category.AcceptanceType, Category.CheckIn)]
4047
public void TestEndpointCrudAndActionWithPiping()

src/Cdn/Cdn.Test/ScenarioTests/EndpointTests.ps1

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,55 @@ function Test-EndpointCrudAndAction
7070
Remove-AzResourceGroup -Name $resourceGroup.ResourceGroupName -Force
7171
}
7272

73+
<#
74+
.SYNOPSIS
75+
Create ENdpoint with RulesEngine config
76+
#>
77+
function Test-EndpointCreateWithRulesEngine
78+
{
79+
$profileName = getAssetName
80+
$resourceGroup = TestSetup-CreateResourceGroup
81+
$resourceLocation = "EastUS"
82+
$profileSku = "Standard_Microsoft"
83+
$createdProfile = New-AzCdnProfile -ProfileName $profileName -ResourceGroupName $resourceGroup.ResourceGroupName -Location $resourceLocation -Sku $profileSku
84+
85+
$endpointName = getAssetName
86+
$originName = getAssetName
87+
$originHostName = "www.microsoft.com"
88+
89+
$nameAvailability = Get-AzCdnEndpointNameAvailability -EndpointName $endpointName
90+
Assert-True{$nameAvailability.NameAvailable}
91+
92+
$description = 'Sample delivery policy'
93+
$cond1 = New-AzCdnDeliveryRuleCondition -MatchVariable IsDevice -Operator Equal -MatchValue "Desktop"
94+
$action1 = New-AzCdnDeliveryRuleAction -SourcePattern "/abc" -Destination "/def" -PreservePath
95+
$action2 = New-AzCdnDeliveryRuleAction -QueryStringBehavior ExcludeAll -QueryParameter "abc","def"
96+
$action3 = New-AzCdnDeliveryRuleAction -QueryStringBehavior IncludeAll
97+
$redirect = New-AzCdnDeliveryRuleAction -RedirectType Found -DestinationProtocol MatchRequest
98+
$rule0 = New-AzCdnDeliveryRule -Name "EmptyCondition" -Order 0 -Action $redirect,$action3
99+
$rule1 = New-AzCdnDeliveryRule -Name "Rule1" -Order 1 -Condition $cond1 -Action $action1,$action2
100+
$deliverypolicy = New-AzCdnDeliveryPolicy -Description $description -Rule $rule0,$rule1
101+
102+
$createdEndpoint = New-AzCdnEndpoint -EndpointName $endpointName -ProfileName $profileName -ResourceGroupName $resourceGroup.ResourceGroupName -Location $resourceLocation -OriginName $originName -OriginHostName $originHostName -DeliveryPolicy $deliveryPolicy
103+
Assert-AreEqual $description $createdEndpoint.DeliveryPolicy.Description
104+
Assert-AreEqual $endpointName $createdEndpoint.Name
105+
Assert-AreEqual $rule0.Name $createdEndpoint.DeliveryPolicy.Rules[0].Name
106+
Assert-AreEqual $rule1.Name $createdEndpoint.DeliveryPolicy.Rules[1].Name
107+
Assert-AreEqual $profileName $createdEndpoint.ProfileName
108+
Assert-AreEqual $resourceGroup.ResourceGroupName $createdEndpoint.ResourceGroupName
109+
Assert-AreEqual $originName $createdEndpoint.Origins[0].Name
110+
Assert-AreEqual $originHostName $createdEndpoint.Origins[0].HostName
111+
112+
113+
$endpointRemoved = Remove-AzCdnEndpoint -EndpointName $endpointName -ProfileName $profileName -ResourceGroupName $resourceGroup.ResourceGroupName -PassThru -Force
114+
Assert-True{$endpointRemoved}
115+
116+
Assert-ThrowsContains { Get-AzCdnEndpoint -EndpointName $endpointName -ProfileName $profileName -ResourceGroupName $resourceGroup.ResourceGroupName } "NotFound"
117+
118+
Remove-AzResourceGroup -Name $resourceGroup.ResourceGroupName -Force
119+
}
120+
121+
73122
<#
74123
.SYNOPSIS
75124
Endpoint cycle with piping

0 commit comments

Comments
 (0)