pv_controller: update tests for multiple storageclasses

Signed-off-by: danishprakash <grafitykoncept@gmail.com>
This commit is contained in:
danishprakash 2022-08-04 09:37:27 +05:30
parent f12325add3
commit f10f4d372c
No known key found for this signature in database
GPG Key ID: 00C8C873955EB43F
3 changed files with 19 additions and 18 deletions

View File

@ -773,23 +773,6 @@ func TestRetroactiveStorageClassAssignment(t *testing.T) {
}, },
}, },
}, },
{
storageClasses: []*storagev1.StorageClass{
makeDefaultStorageClass(classGold, &modeImmediate),
makeDefaultStorageClass(classSilver, &modeImmediate)},
tests: []controllerTest{
{
name: "15-2 - pvc storage class is not assigned retroactively if there are multiple default storage classes",
initialVolumes: novolumes,
expectedVolumes: novolumes,
initialClaims: newClaimArray("claim15-2", "uid15-2", "1Gi", "", v1.ClaimPending, nil),
expectedClaims: newClaimArray("claim15-2", "uid15-2", "1Gi", "", v1.ClaimPending, nil),
expectedEvents: noevents,
errors: noerrors,
test: testSyncClaim,
},
},
},
{ {
storageClasses: []*storagev1.StorageClass{ storageClasses: []*storagev1.StorageClass{
makeDefaultStorageClass(classGold, &modeImmediate), makeDefaultStorageClass(classGold, &modeImmediate),
@ -844,6 +827,23 @@ func TestRetroactiveStorageClassAssignment(t *testing.T) {
}, },
}, },
}, },
{
storageClasses: []*storagev1.StorageClass{
makeDefaultStorageClass(classGold, &modeImmediate),
makeDefaultStorageClass(classSilver, &modeImmediate)},
tests: []controllerTest{
{
name: "15-2 - pvc storage class is assigned retroactively if there are multiple default storage classes",
initialVolumes: novolumes,
expectedVolumes: novolumes,
initialClaims: newClaimArray("claim15-2", "uid15-2", "1Gi", "", v1.ClaimPending, nil),
expectedClaims: newClaimArray("claim15-2", "uid15-2", "1Gi", "", v1.ClaimPending, &classGold),
expectedEvents: noevents,
errors: noerrors,
test: testSyncClaim,
},
},
},
{ {
storageClasses: []*storagev1.StorageClass{ storageClasses: []*storagev1.StorageClass{
makeDefaultStorageClass(classGold, &modeImmediate), makeDefaultStorageClass(classGold, &modeImmediate),

View File

@ -55,6 +55,8 @@ func GetDefaultClass(lister storagev1listers.StorageClassLister) (*storagev1.Sto
return nil, nil return nil, nil
} }
// Primary sort by creation timestamp, newest first
// Secondary sort by class name, ascending order
sort.Slice(defaultClasses, func(i, j int) bool { sort.Slice(defaultClasses, func(i, j int) bool {
if defaultClasses[i].CreationTimestamp.UnixNano() == defaultClasses[j].CreationTimestamp.UnixNano() { if defaultClasses[i].CreationTimestamp.UnixNano() == defaultClasses[j].CreationTimestamp.UnixNano() {
return defaultClasses[i].Name < defaultClasses[j].Name return defaultClasses[i].Name < defaultClasses[j].Name

View File

@ -20,7 +20,6 @@ import (
"context" "context"
"fmt" "fmt"
"io" "io"
"k8s.io/kubernetes/pkg/volume/util" "k8s.io/kubernetes/pkg/volume/util"
"k8s.io/klog/v2" "k8s.io/klog/v2"