diff --git a/staging/src/k8s.io/legacy-cloud-providers/azure/azure_controller_standard_test.go b/staging/src/k8s.io/legacy-cloud-providers/azure/azure_controller_standard_test.go index daae34a46bc..0303da77ba8 100644 --- a/staging/src/k8s.io/legacy-cloud-providers/azure/azure_controller_standard_test.go +++ b/staging/src/k8s.io/legacy-cloud-providers/azure/azure_controller_standard_test.go @@ -163,6 +163,10 @@ func TestStandardDetachDisk(t *testing.T) { err := vmSet.DetachDisk(test.diskName, "", test.nodeName) assert.Equal(t, test.expectedError, err != nil, "TestCase[%d]: %s", i, test.desc) + if !test.expectedError && test.diskName != "" { + dataDisks, err := vmSet.GetDataDisks(test.nodeName, azcache.CacheReadTypeDefault) + assert.Equal(t, true, len(dataDisks) == 1, "TestCase[%d]: %s, err: %v", i, test.desc, err) + } } } diff --git a/staging/src/k8s.io/legacy-cloud-providers/azure/azure_controller_vmss_test.go b/staging/src/k8s.io/legacy-cloud-providers/azure/azure_controller_vmss_test.go index ebd82a1c020..18afa6046f2 100644 --- a/staging/src/k8s.io/legacy-cloud-providers/azure/azure_controller_vmss_test.go +++ b/staging/src/k8s.io/legacy-cloud-providers/azure/azure_controller_vmss_test.go @@ -141,6 +141,7 @@ func TestDetachDiskWithVMSS(t *testing.T) { defer ctrl.Finish() fakeStatusNotFoundVMSSName := types.NodeName("FakeStatusNotFoundVMSSName") + diskName := "disk-name" testCases := []struct { desc string vmList map[string]string @@ -156,7 +157,7 @@ func TestDetachDiskWithVMSS(t *testing.T) { vmssVMList: []string{"vmss-vm-000001"}, vmssName: "vm1", vmssvmName: "vm1", - existedDisk: compute.Disk{Name: to.StringPtr("disk-name")}, + existedDisk: compute.Disk{Name: to.StringPtr(diskName)}, expectedErr: true, expectedErrMsg: fmt.Errorf("not a vmss instance"), }, @@ -165,7 +166,7 @@ func TestDetachDiskWithVMSS(t *testing.T) { vmssVMList: []string{"vmss00-vm-000000", "vmss00-vm-000001", "vmss00-vm-000002"}, vmssName: "vmss00", vmssvmName: "vmss00-vm-000000", - existedDisk: compute.Disk{Name: to.StringPtr("disk-name")}, + existedDisk: compute.Disk{Name: to.StringPtr(diskName)}, expectedErr: false, }, { @@ -173,7 +174,7 @@ func TestDetachDiskWithVMSS(t *testing.T) { vmssVMList: []string{"vmss00-vm-000000", "vmss00-vm-000001", "vmss00-vm-000002"}, vmssName: fakeStatusNotFoundVMSSName, vmssvmName: "vmss00-vm-000000", - existedDisk: compute.Disk{Name: to.StringPtr("disk-name")}, + existedDisk: compute.Disk{Name: to.StringPtr(diskName)}, expectedErr: true, expectedErrMsg: fmt.Errorf("Retriable: false, RetryAfter: 0s, HTTPStatusCode: 404, RawError: instance not found"), }, @@ -213,7 +214,7 @@ func TestDetachDiskWithVMSS(t *testing.T) { }, DataDisks: &[]compute.DataDisk{{ Lun: to.Int32Ptr(0), - Name: to.StringPtr("disk-name"), + Name: to.StringPtr(diskName), }}, } } @@ -225,12 +226,14 @@ func TestDetachDiskWithVMSS(t *testing.T) { mockVMSSVMClient.EXPECT().Update(gomock.Any(), testCloud.ResourceGroup, scaleSetName, gomock.Any(), gomock.Any(), gomock.Any()).Return(nil).AnyTimes() } - diskURI := fmt.Sprintf("/subscriptions/%s/resourceGroups/%s/providers/Microsoft.Compute/disks/%s", - testCloud.SubscriptionID, testCloud.ResourceGroup, *test.existedDisk.Name) - - err = ss.DetachDisk(*test.existedDisk.Name, diskURI, test.vmssvmName) + err = ss.DetachDisk(*test.existedDisk.Name, diskName, test.vmssvmName) assert.Equal(t, test.expectedErr, err != nil, "TestCase[%d]: %s, err: %v", i, test.desc, err) assert.Equal(t, test.expectedErrMsg, err, "TestCase[%d]: %s, expected error: %v, return error: %v", i, test.desc, test.expectedErrMsg, err) + + if !test.expectedErr { + dataDisks, err := ss.GetDataDisks(test.vmssvmName, azcache.CacheReadTypeDefault) + assert.Equal(t, true, len(dataDisks) == 1, "TestCase[%d]: %s, actual data disk num: %d, err: %v", i, test.desc, len(dataDisks), err) + } } }