github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v6@v6.2.0/natgateway_live_test.go (about) 1 //go:build go1.18 2 // +build go1.18 3 4 // Copyright (c) Microsoft Corporation. All rights reserved. 5 // Licensed under the MIT License. See License.txt in the project root for license information. 6 7 package armnetwork_test 8 9 import ( 10 "context" 11 "fmt" 12 "testing" 13 14 "github.com/Azure/azure-sdk-for-go/sdk/azcore" 15 "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" 16 "github.com/Azure/azure-sdk-for-go/sdk/azcore/to" 17 "github.com/Azure/azure-sdk-for-go/sdk/internal/recording" 18 "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/internal/v3/testutil" 19 "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v6" 20 "github.com/stretchr/testify/suite" 21 ) 22 23 type NatGatewayTestSuite struct { 24 suite.Suite 25 26 ctx context.Context 27 cred azcore.TokenCredential 28 options *arm.ClientOptions 29 natGatewayName string 30 location string 31 resourceGroupName string 32 subscriptionId string 33 } 34 35 func (testsuite *NatGatewayTestSuite) SetupSuite() { 36 testutil.StartRecording(testsuite.T(), pathToPackage) 37 38 testsuite.ctx = context.Background() 39 testsuite.cred, testsuite.options = testutil.GetCredAndClientOptions(testsuite.T()) 40 testsuite.natGatewayName, _ = recording.GenerateAlphaNumericID(testsuite.T(), "natgateway", 16, false) 41 testsuite.location = recording.GetEnvVariable("LOCATION", "westus") 42 testsuite.resourceGroupName = recording.GetEnvVariable("RESOURCE_GROUP_NAME", "scenarioTestTempGroup") 43 testsuite.subscriptionId = recording.GetEnvVariable("AZURE_SUBSCRIPTION_ID", "00000000-0000-0000-0000-000000000000") 44 resourceGroup, _, err := testutil.CreateResourceGroup(testsuite.ctx, testsuite.subscriptionId, testsuite.cred, testsuite.options, testsuite.location) 45 testsuite.Require().NoError(err) 46 testsuite.resourceGroupName = *resourceGroup.Name 47 } 48 49 func (testsuite *NatGatewayTestSuite) TearDownSuite() { 50 _, err := testutil.DeleteResourceGroup(testsuite.ctx, testsuite.subscriptionId, testsuite.cred, testsuite.options, testsuite.resourceGroupName) 51 testsuite.Require().NoError(err) 52 testutil.StopRecording(testsuite.T()) 53 } 54 55 func TestNatGatewayTestSuite(t *testing.T) { 56 suite.Run(t, new(NatGatewayTestSuite)) 57 } 58 59 // Microsoft.Network/natGateways/{natGatewayName} 60 func (testsuite *NatGatewayTestSuite) TestNatGateways() { 61 var err error 62 // From step NatGateways_CreateOrUpdate 63 fmt.Println("Call operation: NatGateways_CreateOrUpdate") 64 natGatewaysClient, err := armnetwork.NewNatGatewaysClient(testsuite.subscriptionId, testsuite.cred, testsuite.options) 65 testsuite.Require().NoError(err) 66 natGatewaysClientCreateOrUpdateResponsePoller, err := natGatewaysClient.BeginCreateOrUpdate(testsuite.ctx, testsuite.resourceGroupName, testsuite.natGatewayName, armnetwork.NatGateway{ 67 Location: to.Ptr(testsuite.location), 68 SKU: &armnetwork.NatGatewaySKU{ 69 Name: to.Ptr(armnetwork.NatGatewaySKUNameStandard), 70 }, 71 }, nil) 72 testsuite.Require().NoError(err) 73 _, err = testutil.PollForTest(testsuite.ctx, natGatewaysClientCreateOrUpdateResponsePoller) 74 testsuite.Require().NoError(err) 75 76 // From step NatGateways_ListAll 77 fmt.Println("Call operation: NatGateways_ListAll") 78 natGatewaysClientNewListAllPager := natGatewaysClient.NewListAllPager(nil) 79 for natGatewaysClientNewListAllPager.More() { 80 _, err := natGatewaysClientNewListAllPager.NextPage(testsuite.ctx) 81 testsuite.Require().NoError(err) 82 break 83 } 84 85 // From step NatGateways_Get 86 fmt.Println("Call operation: NatGateways_Get") 87 _, err = natGatewaysClient.Get(testsuite.ctx, testsuite.resourceGroupName, testsuite.natGatewayName, &armnetwork.NatGatewaysClientGetOptions{Expand: nil}) 88 testsuite.Require().NoError(err) 89 90 // From step NatGateways_List 91 fmt.Println("Call operation: NatGateways_List") 92 natGatewaysClientNewListPager := natGatewaysClient.NewListPager(testsuite.resourceGroupName, nil) 93 for natGatewaysClientNewListPager.More() { 94 _, err := natGatewaysClientNewListPager.NextPage(testsuite.ctx) 95 testsuite.Require().NoError(err) 96 break 97 } 98 99 // From step NatGateways_UpdateTags 100 fmt.Println("Call operation: NatGateways_UpdateTags") 101 _, err = natGatewaysClient.UpdateTags(testsuite.ctx, testsuite.resourceGroupName, testsuite.natGatewayName, armnetwork.TagsObject{ 102 Tags: map[string]*string{ 103 "tag1": to.Ptr("value1"), 104 "tag2": to.Ptr("value2"), 105 }, 106 }, nil) 107 testsuite.Require().NoError(err) 108 109 // From step NatGateways_Delete 110 fmt.Println("Call operation: NatGateways_Delete") 111 natGatewaysClientDeleteResponsePoller, err := natGatewaysClient.BeginDelete(testsuite.ctx, testsuite.resourceGroupName, testsuite.natGatewayName, nil) 112 testsuite.Require().NoError(err) 113 _, err = testutil.PollForTest(testsuite.ctx, natGatewaysClientDeleteResponsePoller) 114 testsuite.Require().NoError(err) 115 }