@@ -391,10 +391,7 @@ function Test-AddAzureRmMetricAlertRuleV2-ActionGroupId
391391 $actionGroup1 = New-AzActionGroup - ActionGroupId $NewActionGroup1.Id
392392 $condition = New-AzMetricAlertRuleV2Criteria - MetricName " UsedCapacity" - Operator GreaterThan - Threshold 8 - TimeAggregation Average
393393 try
394- {
395- # Test - cannot create metric alert with action group id and action group
396- Assert-Throws { Add-AzMetricAlertRuleV2 - Name $ruleName - ResourceGroupName $rgname - WindowSize 01 :00 :00 - Frequency 00 :05 :00 - TargetResourceId $targetResourceId - Condition $condition - ActionGroup $actionGroup1 - ActionGroupId $NewActionGroup1.Id , $NewActionGroup1.Id - Severity 3 } " Parameter set cannot be resolved using the specified named parameters. One or more parameters issued cannot be used together or an insufficient number of parameters were provided."
397-
394+ {
398395 # Test - create metric alert by action group id
399396 $actual = Add-AzMetricAlertRuleV2 - Name $ruleName - ResourceGroupName $rgname - WindowSize 01 :00 :00 - Frequency 00 :05 :00 - TargetResourceId $targetResourceId - Condition $condition - ActionGroupId $NewActionGroup1.Id , $NewActionGroup2.Id - Severity 3
400397 Assert-AreEqual $actual.Name $ruleName
@@ -411,6 +408,60 @@ function Test-AddAzureRmMetricAlertRuleV2-ActionGroupId
411408
412409 <#
413410. SYNOPSIS
411+ Tests disabling a GenV2 metric alert rule with action groups.
412+ #>
413+ function Test-DisableAzureRmMetricAlertRuleV2WithActionGroups
414+ {
415+ # Setup
416+ $sub = Get-AzContext
417+ $subscription = $sub.subscription.subscriptionId
418+ $rgname = Get-ResourceGroupName
419+ $location = Get-ProviderLocation ResourceManagement
420+ $resourceName = Get-ResourceName
421+ $ruleWithActionGroupIdName = Get-ResourceName
422+ $ruleByResourceId = Get-ResourceName
423+ $ruleByResourceScope = Get-ResourceName
424+ $actionGroupName1 = Get-ResourceName
425+ $actionGroupName2 = Get-ResourceName
426+ $targetResourceId = ' /subscriptions/' + $subscription + ' /resourceGroups/' + $rgname + ' /providers/Microsoft.Storage/storageAccounts/' + $resourceName
427+ $targetResourceScope = $targetResourceId
428+ $targetResourceType = ' Microsoft.Storage/storageAccounts'
429+ New-AzResourceGroup - Name $rgname - Location $location - Force
430+ New-AzStorageAccount - ResourceGroupName $rgname - Name $resourceName - Location $location - Type Standard_GRS
431+ $email = New-AzActionGroupReceiver - Name
' user1' - EmailReceiver
- EmailAddress
' [email protected] ' 432+ $newActionGroup1 = Set-AzureRmActionGroup - Name $actionGroupName1 - ResourceGroup $rgname - ShortName ASTG - Receiver $email
433+ $newActionGroup2 = Set-AzureRmActionGroup - Name $actionGroupName2 - ResourceGroup $rgname - ShortName ASTG - Receiver $email
434+ $condition = New-AzMetricAlertRuleV2Criteria - MetricName " UsedCapacity" - Operator GreaterThan - Threshold 8 - TimeAggregation Average
435+ try
436+ {
437+ # Test - disable metric alert with resource id and action group
438+ $actual = Add-AzMetricAlertRuleV2 - Name $ruleByResourceId - ResourceGroupName $rgname - WindowSize 01 :00 :00 - Frequency 00 :05 :00 - TargetResourceId $targetResourceId - Condition $condition - Severity 3 - ActionGroupId $newActionGroup1.Id , $newActionGroup2.Id
439+ $actual = Get-AzMetricAlertRuleV2 - ResourceGroupName $rgname - Name $ruleByResourceId | Add-AzMetricAlertRuleV2 - DisableRule
440+ Assert-AreEqual $actual.Name $ruleByResourceId
441+ Assert-AreEqual $actual.Actions [0 ].ActionGroupId $NewActionGroup1.Id
442+ Assert-AreEqual $actual.Actions [1 ].ActionGroupId $NewActionGroup2.Id
443+
444+ # Test - disable metric alert with scope and action group
445+ $actual = Add-AzMetricAlertRuleV2 - Name $ruleByResourceScope - ResourceGroupName $rgname - WindowSize 01 :00 :00 - Frequency 00 :05 :00 - TargetResourceScope $targetResourceScope - TargetResourceType $targetResourceType - TargetResourceRegion $location - Condition $condition - Severity 3 - ActionGroupId $newActionGroup1.Id , $newActionGroup2.Id
446+ $actual = Get-AzMetricAlertRuleV2 - ResourceGroupName $rgname - Name $ruleByResourceScope | Add-AzMetricAlertRuleV2 - DisableRule
447+ Assert-AreEqual $actual.Name $ruleByResourceScope
448+ Assert-AreEqual $actual.Actions [0 ].ActionGroupId $NewActionGroup1.Id
449+ Assert-AreEqual $actual.Actions [1 ].ActionGroupId $NewActionGroup2.Id
450+ }
451+ finally
452+ {
453+ # Cleanup
454+ Remove-AzMetricAlertRuleV2 - ResourceGroupName $rgname - Name $ruleByResourceId
455+ Remove-AzMetricAlertRuleV2 - ResourceGroupName $rgname - Name $ruleByResourceScope
456+ Remove-AzActionGroup - ResourceGroupName $rgname - Name $actionGroupName1
457+ Remove-AzActionGroup - ResourceGroupName $rgname - Name $actionGroupName2
458+ Remove-AzureRmStorageAccount - ResourceGroupName $rgName - Name $resourceName
459+ Remove-AzResourceGroup - Name $rgname - Force
460+ }
461+ }
462+
463+ <#
464+ . SYNOPSIS
414465Tests adding a GenV2 dyanmic metric alert rule.
415466#>
416467function Test-AddAzureRmMetricAlertRuleV2-DynamicThreshold
0 commit comments