@@ -44,16 +44,17 @@ import (
44
44
const (
45
45
testNamePrefix = "gcepd-csi-e2e-"
46
46
47
- defaultSizeGb int64 = 5
48
- defaultExtremeSizeGb int64 = 500
49
- defaultRepdSizeGb int64 = 200
50
- defaultMwSizeGb int64 = 200
51
- defaultVolumeLimit int64 = 127
52
- readyState = "READY"
53
- standardDiskType = "pd-standard"
54
- extremeDiskType = "pd-extreme"
55
- provisionedIOPSOnCreate = "12345"
56
- provisionedIOPSOnCreateInt = int64 (12345 )
47
+ defaultSizeGb int64 = 5
48
+ defaultExtremeSizeGb int64 = 500
49
+ defaultRepdSizeGb int64 = 200
50
+ defaultMwSizeGb int64 = 200
51
+ defaultVolumeLimit int64 = 127
52
+ readyState = "READY"
53
+ standardDiskType = "pd-standard"
54
+ extremeDiskType = "pd-extreme"
55
+ provisionedIOPSOnCreate = "12345"
56
+ provisionedIOPSOnCreateInt = int64 (12345 )
57
+ provisionedIOPSOnCreateDefaultInt = int64 (100000 )
57
58
58
59
defaultEpsilon = 500000000 // 500M
59
60
)
@@ -419,6 +420,47 @@ var _ = Describe("GCE PD CSI Driver", func() {
419
420
Entry ("on pd-extreme" , extremeDiskType ),
420
421
)
421
422
423
+ DescribeTable ("Should create and delete pd-extreme disk with default iops" ,
424
+ func (diskType string ) {
425
+ Expect (testContexts ).ToNot (BeEmpty ())
426
+ testContext := getRandomTestContext ()
427
+
428
+ p , z , _ := testContext .Instance .GetIdentity ()
429
+ client := testContext .Client
430
+
431
+ // Create Disk
432
+ disk := typeToDisk [diskType ]
433
+ volName := testNamePrefix + string (uuid .NewUUID ())
434
+
435
+ diskSize := defaultExtremeSizeGb
436
+
437
+ volume , err := client .CreateVolume (volName , disk .params , diskSize , nil , nil )
438
+
439
+ Expect (err ).To (BeNil (), "CreateVolume failed with error: %v" , err )
440
+
441
+ // Validate Disk Created
442
+ cloudDisk , err := computeService .Disks .Get (p , z , volName ).Do ()
443
+ Expect (err ).To (BeNil (), "Could not get disk from cloud directly" )
444
+ Expect (cloudDisk .Status ).To (Equal (readyState ))
445
+ Expect (cloudDisk .SizeGb ).To (Equal (defaultExtremeSizeGb ))
446
+ Expect (disk .Type ).To (ContainSubstring (extremeDiskType ))
447
+ Expect (disk .ProvisionedIops ).To (Equal (provisionedIOPSOnCreateInt ))
448
+ Expect (cloudDisk .Name ).To (Equal (volName ))
449
+ disk .validate (cloudDisk )
450
+
451
+ defer func () {
452
+ // Delete Disk
453
+ client .DeleteVolume (volume .VolumeId )
454
+ Expect (err ).To (BeNil (), "DeleteVolume failed" )
455
+
456
+ // Validate Disk Deleted
457
+ _ , err = computeService .Disks .Get (p , z , volName ).Do ()
458
+ Expect (gce .IsGCEError (err , "notFound" )).To (BeTrue (), "Expected disk to not be found" )
459
+ }()
460
+ },
461
+ Entry ("on pd-extreme" , extremeDiskType ),
462
+ )
463
+
422
464
DescribeTable ("Should create and delete disk with labels" ,
423
465
func (diskType string ) {
424
466
Expect (testContexts ).ToNot (BeEmpty ())
0 commit comments