@@ -98,6 +98,58 @@ function Get-TestResourcesDeployment([string]$rgn)
98
98
New-AzureRmResourceGroupDeployment - Name " ${rgn} " - ResourceGroupName " $rgn " - TemplateFile " $templateFile " - TemplateParameterFile $paramFile
99
99
}
100
100
101
+ <#
102
+ . SYNOPSIS
103
+ Get existing Network Watcher.
104
+ #>
105
+ function Get-CreateTestNetworkWatcher ($location , $nwName , $nwRgName )
106
+ {
107
+ # Get Network Watcher
108
+ $nwlist = Get-AzureRmNetworkWatcher
109
+ foreach ($i in $nwlist )
110
+ {
111
+ if ($i.Location -eq " $location " )
112
+ {
113
+ $nw = $i
114
+ }
115
+ }
116
+
117
+ # Create Network Watcher if no existing nw
118
+ if (! $nw )
119
+ {
120
+ $nw = New-AzureRmNetworkWatcher - Name $nwName - ResourceGroupName $nwRgName - Location $location
121
+ }
122
+
123
+ return $nw
124
+ }
125
+
126
+ <#
127
+ . SYNOPSIS
128
+ Deployment of new Network Watcher.
129
+ #>
130
+ function Get-DeleteAndCreateTestNetworkWatcher ($location , $nwName , $nwRgName , $tags )
131
+ {
132
+ # Get Network Watcher
133
+ $nwlist = Get-AzureRmNetworkWatcher
134
+ foreach ($i in $nwlist )
135
+ {
136
+ if ($i.Location -eq " $location " )
137
+ {
138
+ $nw = $i
139
+ }
140
+ }
141
+
142
+ # Delete Network Watcher if existing nw
143
+ if ($nw )
144
+ {
145
+ Remove-AzureRmNetworkWatcher - NetworkWatcher $nw
146
+ }
147
+
148
+ $nw = New-AzureRmNetworkWatcher - Name $nwName - ResourceGroupName $nwRgName - Location $location - Tag $tags
149
+
150
+ return $nw
151
+ }
152
+
101
153
<#
102
154
. SYNOPSIS
103
155
Test GetTopology NetworkWatcher API.
@@ -112,7 +164,7 @@ function Test-GetTopology
112
164
$nwLocation = Get-ProviderLocation $resourceTypeParent
113
165
$nwRgName = Get-ResourceGroupName
114
166
$templateFile = (Resolve-Path " .\TestData\Deployment.json" ).Path
115
-
167
+
116
168
try
117
169
{
118
170
. " .\AzureRM.Resources.ps1"
@@ -123,12 +175,12 @@ function Test-GetTopology
123
175
# Deploy resources
124
176
Get-TestResourcesDeployment - rgn " $resourceGroupName "
125
177
126
- # Create Resource group for Network Watcher
178
+ # Create Resource group for Network Watcher
127
179
New-AzureRmResourceGroup - Name $nwRgName - Location " $location "
128
180
129
- # Create Network Watcher
130
- $nw = New-AzureRmNetworkWatcher - Name $nwName - ResourceGroupName $nwRgName - Location $location
131
-
181
+ # Get Network Watcher
182
+ $nw = Get-CreateTestNetworkWatcher - location $location - nwName $nwName - nwRgName $nwRgName
183
+
132
184
# Get topology in the resource group $resourceGroupName
133
185
$topology = Get-AzureRmNetworkWatcherTopology - NetworkWatcher $nw - TargetResourceGroupName $resourceGroupName
134
186
@@ -178,8 +230,8 @@ function Test-GetSecurityGroupView
178
230
# Create Resource group for Network Watcher
179
231
New-AzureRmResourceGroup - Name $nwRgName - Location " $location "
180
232
181
- # Create Network Watcher
182
- $nw = New-AzureRmNetworkWatcher - Name $nwName - ResourceGroupName $nwRgName - Location $location
233
+ # Get Network Watcher
234
+ $nw = Get-CreateTestNetworkWatcher - location $location - nwName $nwName - nwRgName $nwRgName
183
235
184
236
# Get Vm
185
237
$vm = Get-AzureRmVM - ResourceGroupName $resourceGroupName
@@ -243,8 +295,8 @@ function Test-GetNextHop
243
295
# Create Resource group for Network Watcher
244
296
New-AzureRmResourceGroup - Name $nwRgName - Location " $location "
245
297
246
- # Create Network Watcher
247
- $nw = New-AzureRmNetworkWatcher - Name $nwName - ResourceGroupName $nwRgName - Location $location
298
+ # Get Network Watcher
299
+ $nw = Get-CreateTestNetworkWatcher - location $location - nwName $nwName - nwRgName $nwRgName
248
300
249
301
# Get Vm
250
302
$vm = Get-AzureRmVM - ResourceGroupName $resourceGroupName
@@ -301,8 +353,8 @@ function Test-VerifyIPFlow
301
353
# Create Resource group for Network Watcher
302
354
New-AzureRmResourceGroup - Name $nwRgName - Location " $location "
303
355
304
- # Create Network Watcher
305
- $nw = New-AzureRmNetworkWatcher - Name $nwName - ResourceGroupName $nwRgName - Location $location
356
+ # Get Network Watcher
357
+ $nw = Get-CreateTestNetworkWatcher - location $location - nwName $nwName - nwRgName $nwRgName
306
358
307
359
# Get network security group
308
360
$nsg = Get-AzureRmNetworkSecurityGroup - ResourceGroupName $resourceGroupName
@@ -372,8 +424,8 @@ function Test-PacketCapture
372
424
# Create Resource group for Network Watcher
373
425
New-AzureRmResourceGroup - Name $nwRgName - Location " $location "
374
426
375
- # Create Network Watcher
376
- $nw = New-AzureRmNetworkWatcher - Name $nwName - ResourceGroupName $nwRgName - Location $location
427
+ # Get Network Watcher
428
+ $nw = Get-CreateTestNetworkWatcher - location $location - nwName $nwName - nwRgName $nwRgName
377
429
378
430
# Get Vm
379
431
$vm = Get-AzureRmVM - ResourceGroupName $resourceGroupName
@@ -477,9 +529,9 @@ function Test-Troubleshoot
477
529
478
530
# Create Resource group for Network Watcher
479
531
New-AzureRmResourceGroup - Name $nwRgName - Location " $location "
480
-
481
- # Create Network Watcher
482
- $nw = New-AzureRmNetworkWatcher - Name $nwName - ResourceGroupName $nwRgName - Location $location
532
+
533
+ # Get Network Watcher
534
+ $nw = Get-CreateTestNetworkWatcher - location $location - nwName $nwName - nwRgName $nwRgName
483
535
484
536
# Create storage
485
537
$stoname = ' sto' + $resourceGroupName
@@ -495,7 +547,11 @@ function Test-Troubleshoot
495
547
$sto = Get-AzureRmStorageAccount - ResourceGroupName $resourceGroupName - Name $stoname ;
496
548
497
549
Start-AzureRmNetworkWatcherResourceTroubleshooting - NetworkWatcher $nw - TargetResourceId $gw.Id - StorageId $sto.Id - StoragePath $container.CloudBlobContainer.StorageUri.PrimaryUri.AbsoluteUri ;
498
- Get-AzureRmNetworkWatcherTroubleshootingResult - NetworkWatcher $nw - TargetResourceId $gw.Id
550
+ $result = Get-AzureRmNetworkWatcherTroubleshootingResult - NetworkWatcher $nw - TargetResourceId $gw.Id
551
+
552
+ # Validation
553
+ Assert-AreEqual $result.code " UnHealthy"
554
+ Assert-AreEqual $result.results [0 ].id " NoConnectionsFoundForGateway"
499
555
}
500
556
finally
501
557
{
@@ -540,8 +596,8 @@ function Test-FlowLog
540
596
# Create Resource group for Network Watcher
541
597
New-AzureRmResourceGroup - Name $nwRgName - Location " $location "
542
598
543
- # Create Network Watcher
544
- $nw = New-AzureRmNetworkWatcher - Name $nwName - ResourceGroupName $nwRgName - Location $location
599
+ # Get Network Watcher
600
+ $nw = Get-CreateTestNetworkWatcher - location $location - nwName $nwName - nwRgName $nwRgName
545
601
546
602
# Create storage
547
603
$stoname = ' sto' + $stoname
@@ -625,8 +681,8 @@ function Test-ConnectivityCheck
625
681
# Create Resource group for Network Watcher
626
682
New-AzureRmResourceGroup - Name $nwRgName - Location " $location "
627
683
628
- # Create Network Watcher
629
- $nw = New-AzureRmNetworkWatcher - Name $nwName - ResourceGroupName $nwRgName - Location $location
684
+ # Get Network Watcher
685
+ $nw = Get-CreateTestNetworkWatcher - location $location - nwName $nwName - nwRgName $nwRgName
630
686
631
687
# Get Vm
632
688
$vm = Get-AzureRmVM - ResourceGroupName $resourceGroupName
@@ -678,7 +734,7 @@ function Test-ReachabilityReport
678
734
679
735
# Create the Network Watcher
680
736
$tags = @ {" key1" = " value1" ; " key2" = " value2" }
681
- $nw = New-AzureRmNetworkWatcher - Name $nwName - ResourceGroupName $rgname - Location $location - Tag $tags
737
+ $nw = Get-DeleteAndCreateTestNetworkWatcher - location $location - nwName $nwName - nwRgName $rgname - tags $tags
682
738
683
739
$job = Get-AzureRmNetworkWatcherReachabilityReport - NetworkWatcher $nw - Location " West US" - Country " United States" - StartTime " 2017-10-05" - EndTime " 2017-10-10" - AsJob
684
740
$job | Wait-Job
@@ -723,7 +779,7 @@ function Test-ProvidersList
723
779
724
780
# Create the Network Watcher
725
781
$tags = @ {" key1" = " value1" ; " key2" = " value2" }
726
- $nw = New-AzureRmNetworkWatcher - Name $nwName - ResourceGroupName $rgname - Location $location - Tag $tags
782
+ $nw = Get-DeleteAndCreateTestNetworkWatcher - location $location - nwName $nwName - nwRgName $rgname - tags $tags
727
783
728
784
$job = Get-AzureRmNetworkWatcherReachabilityProvidersList - NetworkWatcher $nw - Location " West US" - Country " United States" - AsJob
729
785
$job | Wait-Job
@@ -769,18 +825,18 @@ function Test-ConnectionMonitor
769
825
770
826
# Deploy resources
771
827
Get-TestResourcesDeployment - rgn " $resourceGroupName "
772
-
773
- # Create Resource group for Network Watcher
828
+
829
+ # Create Resource group for Network Watcher
774
830
New-AzureRmResourceGroup - Name $nwRgName - Location " $location "
775
831
776
- # Create Network Watcher
777
- $nw = New-AzureRmNetworkWatcher - Name $nwName - ResourceGroupName $nwRgName - Location $location
832
+ # Get Network Watcher
833
+ $nw = Get-CreateTestNetworkWatcher - location $location - nwName $nwName - nwRgName $nwRgName
778
834
779
835
# Get Vm
780
836
$vm = Get-AzureRmVM - ResourceGroupName $resourceGroupName
781
837
782
838
# Install networkWatcherAgent on Vm
783
- Set-AzureRmVMExtension - ResourceGroupName " $resourceGroupName " - Location " $location " - VMName $vm.Name - Name " MyNetworkWatcherAgent" - Type " NetworkWatcherAgentWindows" - TypeHandlerVersion " 1.4" - Publisher " Microsoft.Azure.NetworkWatcher"
839
+ Set-AzureRmVMExtension - ResourceGroupName " $resourceGroupName " - Location " $location " - VMName $vm.Name - Name " MyNetworkWatcherAgent" - Type " NetworkWatcherAgentWindows" - TypeHandlerVersion " 1.4" - Publisher " Microsoft.Azure.NetworkWatcher"
784
840
785
841
# Create connection monitor
786
842
$job1 = New-AzureRmNetworkWatcherConnectionMonitor - NetworkWatcher $nw - Name $cmName1 - SourceResourceId $vm.Id - DestinationAddress bing.com - DestinationPort 80 - AsJob
0 commit comments