@@ -434,19 +434,36 @@ function Test-PrivateEndpointApplicationSecurityGroup
434
434
Assert-NotNull $asg.Id
435
435
}
436
436
437
- # Update application security groups for the private endpoint
438
- $pe.ApplicationSecurityGroups [0 ].Name = " testname"
439
- $pe | Set-AzPrivateEndpoint
440
- $pe.ApplicationSecurityGroups [0 ].Id = " testid"
441
- Assert-ThrowsContains { $pe | Set-AzPrivateEndpoint } " BadRequest"
442
-
443
- # Verfication after Set-
437
+ # Add application security group
438
+ $asgNew = New-AzApplicationSecurityGroup - Name " ApplicationSecurityGroupNew" - ResourceGroupName $rgname - Location $location
439
+ $pe.ApplicationSecurityGroups.Add ($asgNew )
440
+ Set-AzPrivateEndpoint - PrivateEndpoint $pe
441
+ # Verification after Set-
442
+ $pe = Get-AzPrivateEndpoint - Name $rname - ResourceGroupName $rgname
443
+ Assert-AreEqual 3 $pe.ApplicationSecurityGroups.Count
444
+ Assert-AreEqual $asgNew.Id $pe.ApplicationSecurityGroups [2 ].Id
445
+
446
+ # Remove application security group
447
+ $asg0 = $pe.ApplicationSecurityGroups [0 ]
448
+ $asg0Id = $asg0.Id
449
+ $pe.ApplicationSecurityGroups.Remove ($asg0 )
450
+ Set-AzPrivateEndpoint - PrivateEndpoint $pe
451
+ # Verify after Set-
444
452
$pe = Get-AzPrivateEndpoint - Name $rname - ResourceGroupName $rgname
453
+ Assert-AreEqual 2 $pe.ApplicationSecurityGroups.Count
445
454
foreach ($asg in $pe.ApplicationSecurityGroups )
446
455
{
447
- Assert-AreNotEqual " testname" $asg.Name
448
- Assert-AreNotEqual " testid" $asg.Id
456
+ Assert-AreNotEqual $asg0Id $asg.Name
449
457
}
458
+
459
+ # Assign application security group
460
+ $asg = New-AzApplicationSecurityGroup - Name " ApplicationSecurityGroup" - ResourceGroupName $rgname - Location $location
461
+ $pe.ApplicationSecurityGroups = $asg
462
+ Set-AzPrivateEndpoint - PrivateEndpoint $pe
463
+ # Verification after Set-
464
+ $pe = Get-AzPrivateEndpoint - Name $rname - ResourceGroupName $rgname
465
+ Assert-AreEqual 1 $pe.ApplicationSecurityGroups.Count
466
+ Assert-AreEqual $asg.Id $pe.ApplicationSecurityGroups [0 ].Id
450
467
}
451
468
finally
452
469
{
@@ -536,22 +553,57 @@ function Test-PrivateEndpointIpConfiguration
536
553
Assert-AreEqual $rname $pe.Name
537
554
Assert-AreEqual " Succeeded" $pe.ProvisioningState
538
555
Assert-AreEqual " IpConfiguration" $pe.IpConfigurations [0 ].Name
556
+ Assert-AreEqual " 11.0.1.100" $pe.IpConfigurations [0 ].PrivateIPAddress
539
557
540
558
# Update properties of IpConfiguration for the private endpoint
541
- Assert-ThrowsLike { $pe.IpConfigurations [0 ].Name = " testname" } " * is a ReadOnly property."
542
- Assert-ThrowsLike { $pe.IpConfigurations [0 ].GroupId = " testgroupid" } " * is a ReadOnly property."
543
- Assert-ThrowsLike { $pe.IpConfigurations [0 ].MemberName = " testmembername" } " * is a ReadOnly property."
544
- $ipconfig2 = New-AzPrivateEndpointIpConfiguration - Name " IpConfiguration2" - PrivateIpAddress " 11.0.1.101"
545
- Assert-ThrowsLike { $pe.IpConfigurations = $ipconfig2 } " * is a ReadOnly property."
546
- Assert-ThrowsLike { $pe.IpConfigurations [0 ] = $ipconfig2 } " Unable to index into an object of type *"
547
- Assert-ThrowsLike { $pe.IpConfigurations.Add ($ipconfig2 ) } " Cannot find an overload for *"
548
- Assert-ThrowsLike { $pe.IpConfigurations.Remove ($ipconfig2 ) } " Cannot find an overload for *"
559
+ Assert-ThrowsLike { $pe.IpConfigurations [0 ].PrivateIPAddress = " pipaddress" } " * is a ReadOnly property."
560
+ $pe.IpConfigurations [0 ].Name = " IpConfiguration-Updated"
561
+ $pe.IpConfigurations [0 ].GroupId = " IpConfiguration-Updated-GroupId"
562
+ $pe.IpConfigurations [0 ].MemberName = " IpConfiguration-Updated-MemberName"
563
+ Set-AzPrivateEndpoint - PrivateEndpoint $pe
564
+ # Verify after Set-
565
+ $pe = Get-AzPrivateEndpoint - Name $rname - ResourceGroupName $rgname
566
+ Assert-AreEqual " IpConfiguration-Updated" $pe.IpConfigurations [0 ].Name
567
+ Assert-AreEqual " IpConfiguration-Updated-GroupId" $pe.IpConfigurations [0 ].GroupId
568
+ Assert-AreEqual " IpConfiguration-Updated-MemberName" $pe.IpConfigurations [0 ].MemberName
569
+ Assert-AreEqual " 11.0.1.100" $pe.IpConfigurations [0 ].PrivateIPAddress
570
+
571
+ # Add ip configuration
572
+ $ipcfgNew = New-AzPrivateEndpointIpConfiguration - Name " IpConfiguration-New" - GroupId " IpConfiguration-New-GroupId" - MemberName " IpConfiguration-New-MemberName" - PrivateIpAddress " 11.0.1.101"
573
+ $pe.IpConfigurations.Add ($ipcfgNew )
574
+ Set-AzPrivateEndpoint - PrivateEndpoint $pe
575
+ # Verification after Set-
576
+ $pe = Get-AzPrivateEndpoint - Name $rname - ResourceGroupName $rgname
577
+ Assert-AreEqual 2 $pe.IpConfigurations.Count
578
+ Assert-AreEqual $ipcfgNew.Name $pe.IpConfigurations [1 ].Name
579
+ Assert-AreEqual $ipcfgNew.GroupId $pe.IpConfigurations [1 ].GroupId
580
+ Assert-AreEqual $ipcfgNew.MemberName $pe.IpConfigurations [1 ].MemberName
581
+ Assert-AreEqual $ipcfgNew.PrivateIPAddress $pe.IpConfigurations [1 ].PrivateIPAddress
582
+
583
+ # Remove ip configuration
584
+ $ipcfg0 = $pe.IpConfigurations [0 ]
585
+ $ipcfg0Name = $ipcfg0.Name
586
+ $pe.IpConfigurations.Remove ($ipcfg0 )
587
+ Set-AzPrivateEndpoint - PrivateEndpoint $pe
588
+ # Verify after Set-
589
+ $pe = Get-AzPrivateEndpoint - Name $rname - ResourceGroupName $rgname
590
+ Assert-AreEqual 1 $pe.IpConfigurations.Count
591
+ foreach ($ipcfg in $pe.IpConfigurations )
592
+ {
593
+ Assert-AreNotEqual $ipcfg.Name $ipcfg0Name.Name
594
+ }
549
595
550
- # Verfication after Set-
551
- $pe | Set-AzPrivateEndpoint
596
+ # Assign ip configuration
597
+ $ipcfg = New-AzPrivateEndpointIpConfiguration - Name " pe-ipcfg" - GroupId " pe-ipcfg-groupid" - MemberName " pe-ipcfg-membername" - PrivateIpAddress " 11.0.1.111"
598
+ $pe.IpConfigurations = $ipcfg
599
+ Set-AzPrivateEndpoint - PrivateEndpoint $pe
600
+ # Verification after Set-
552
601
$pe = Get-AzPrivateEndpoint - Name $rname - ResourceGroupName $rgname
553
- Assert-NotNull $pe
554
- Assert-AreEqual " IpConfiguration" $pe.IpConfigurations [0 ].Name
602
+ Assert-AreEqual 1 $pe.IpConfigurations.Count
603
+ Assert-AreEqual $ipcfg.Name $pe.IpConfigurations [0 ].Name
604
+ Assert-AreEqual $ipcfg.GroupId $pe.IpConfigurations [0 ].GroupId
605
+ Assert-AreEqual $ipcfg.MemberName $pe.IpConfigurations [0 ].MemberName
606
+ Assert-AreEqual $ipcfg.PrivateIPAddress $pe.IpConfigurations [0 ].PrivateIPAddress
555
607
}
556
608
finally
557
609
{
0 commit comments