@@ -15,7 +15,69 @@ if(($null -eq $TestName) -or ($TestName -contains 'New-AzFrontDoorCdnRoute'))
15
15
}
16
16
17
17
Describe ' New-AzFrontDoorCdnRoute' {
18
- It ' CreateExpanded' - skip {
19
- { throw [System.NotImplementedException ] } | Should -Not - Throw
18
+ It ' CreateExpanded' {
19
+ $ResourceGroupName = ' testps-rg-' + (RandomString - allChars $false - len 6 )
20
+ try
21
+ {
22
+ Write-Host - ForegroundColor Green " Create test group $ ( $ResourceGroupName ) "
23
+ New-AzResourceGroup - Name $ResourceGroupName - Location $env.location
24
+
25
+ $frontDoorCdnProfileName = ' fdp-' + (RandomString - allChars $false - len 6 );
26
+ Write-Host - ForegroundColor Green " Use frontDoorCdnProfileName : $ ( $frontDoorCdnProfileName ) "
27
+
28
+ $profileSku = " Standard_AzureFrontDoor" ;
29
+ New-AzFrontDoorCdnProfile - SkuName $profileSku - Name $frontDoorCdnProfileName - ResourceGroupName $ResourceGroupName - Location Global
30
+
31
+ $endpointName = ' end-' + (RandomString - allChars $false - len 6 );
32
+ Write-Host - ForegroundColor Green " Use frontDoorCdnEndpointName : $ ( $endpointName ) "
33
+ $endpoint = New-AzFrontDoorCdnEndpoint - EndpointName $endpointName - ProfileName $frontDoorCdnProfileName - ResourceGroupName $ResourceGroupName - Location Global
34
+
35
+ $originGroupName = ' org' + (RandomString - allChars $false - len 6 );
36
+ $originGroup = New-AzFrontDoorCdnOriginGroup - OriginGroupName $originGroupName - ProfileName $frontDoorCdnProfileName - ResourceGroupName $ResourceGroupName `
37
+ - LoadBalancingSettingSampleSize 5 `
38
+ - LoadBalancingSettingSuccessfulSamplesRequired 4 `
39
+ - LoadBalancingSettingAdditionalLatencyInMillisecond 200 `
40
+ - HealthProbeSettingProbeIntervalInSecond 1 `
41
+ - HealthProbeSettingProbePath " /" `
42
+ - HealthProbeSettingProbeProtocol $ ([Microsoft.Azure.PowerShell.Cmdlets.Cdn.Support.ProbeProtocol ]::Https) `
43
+ - HealthProbeSettingProbeRequestType $ ([Microsoft.Azure.PowerShell.Cmdlets.Cdn.Support.HealthProbeRequestType ]::Get) `
44
+
45
+ Get-AzFrontDoorCdnOriginGroup - ResourceGroupName $ResourceGroupName - ProfileName $frontDoorCdnProfileName - OriginGroupName $originGroupName
46
+
47
+ $hostName = " en.wikipedia.org" ;
48
+ $originName = ' ori' + (RandomString - allChars $false - len 6 );
49
+ New-AzFrontDoorCdnOrigin - ResourceGroupName $ResourceGroupName - ProfileName $frontDoorCdnProfileName - OriginGroupName $originGroupName `
50
+ - OriginName $originName - OriginHostHeader $hostName - HostName $hostName `
51
+ - HttpPort 80 - HttpsPort 443 - Priority 1 - Weight 1000
52
+
53
+ $rulesetName = ' rs' + (RandomString - allChars $false - len 6 );
54
+ Write-Host - ForegroundColor Green " Use rulesetName : $ ( $rulesetName ) "
55
+ $ruleSet = New-AzFrontDoorCdnRuleSet - ProfileName $frontDoorCdnProfileName - ResourceGroupName $ResourceGroupName - Name $rulesetName
56
+ $uriConditon = New-AzCdnDeliveryRuleRequestUriConditionObject - Name " RequestUri" - ParameterOperator " Any"
57
+ $conditions = @ (
58
+ $uriConditon
59
+ );
60
+ $overrideAction = New-AzCdnDeliveryRuleRouteConfigurationOverrideActionObject - Name " RouteConfigurationOverride" `
61
+ - CacheConfigurationQueryStringCachingBehavior " IgnoreSpecifiedQueryStrings" `
62
+ - CacheConfigurationQueryParameter " a=test" `
63
+ - CacheConfigurationIsCompressionEnabled " Enabled" `
64
+ - CacheConfigurationCacheBehavior " HonorOrigin"
65
+ $actions = @ ($overrideAction );
66
+
67
+ $ruleName = ' r' + (RandomString - allChars $false - len 6 );
68
+ Write-Host - ForegroundColor Green " Use ruleName : $ ( $ruleName ) "
69
+ New-AzFrontDoorCdnRule - ProfileName $frontDoorCdnProfileName - ResourceGroupName $ResourceGroupName - RuleSetName $rulesetName - Name $ruleName `
70
+ - Action $actions - Condition $conditions
71
+
72
+ $ruleSetResoure = [Microsoft.Azure.PowerShell.Cmdlets.Cdn.Models.Api20210601.ResourceReference ]::new()
73
+ $ruleSetResoure.Id = $ruleSet.Id
74
+
75
+ $routeName = ' route' + (RandomString - allChars $false - len 6 );
76
+ New-AzFrontDoorCdnRoute - Name $routeName - EndpointName $endpointName - ProfileName $frontDoorCdnProfileName - ResourceGroupName $ResourceGroupName `
77
+ - OriginGroupId $originGroup.Id - RuleSet @ ($ruleSetResoure ) - PatternsToMatch " /*" - LinkToDefaultDomain " Enabled" - EnabledState " Enabled"
78
+ } Finally
79
+ {
80
+ Remove-AzResourceGroup - Name $ResourceGroupName - NoWait
81
+ }
20
82
}
21
83
}
0 commit comments