Merge pull request #115502 from pwschuurman/speedup-autodelete-sts-integration-tests

Reduce running time of TestAutodeleteOwnerRefs StatefulSet Integration Tests
This commit is contained in:
Kubernetes Prow Robot 2023-12-13 22:33:57 +01:00 committed by GitHub
commit bd4c29b7e3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -433,13 +433,13 @@ func TestStatefulSetStatusWithPodFail(t *testing.T) {
func TestAutodeleteOwnerRefs(t *testing.T) {
tests := []struct {
name string
namespace string
policy appsv1.StatefulSetPersistentVolumeClaimRetentionPolicy
expectPodOwnerRef bool
expectSetOwnerRef bool
}{
{
name: "always retain",
namespace: "always-retain",
policy: appsv1.StatefulSetPersistentVolumeClaimRetentionPolicy{
WhenDeleted: appsv1.RetainPersistentVolumeClaimRetentionPolicyType,
WhenScaled: appsv1.RetainPersistentVolumeClaimRetentionPolicyType,
@ -448,7 +448,7 @@ func TestAutodeleteOwnerRefs(t *testing.T) {
expectSetOwnerRef: false,
},
{
name: "delete on scaledown only",
namespace: "delete-on-scaledown-only",
policy: appsv1.StatefulSetPersistentVolumeClaimRetentionPolicy{
WhenDeleted: appsv1.RetainPersistentVolumeClaimRetentionPolicyType,
WhenScaled: appsv1.DeletePersistentVolumeClaimRetentionPolicyType,
@ -457,7 +457,7 @@ func TestAutodeleteOwnerRefs(t *testing.T) {
expectSetOwnerRef: false,
},
{
name: "delete with set only",
namespace: "delete-with-set-only",
policy: appsv1.StatefulSetPersistentVolumeClaimRetentionPolicy{
WhenDeleted: appsv1.DeletePersistentVolumeClaimRetentionPolicyType,
WhenScaled: appsv1.RetainPersistentVolumeClaimRetentionPolicyType,
@ -466,7 +466,7 @@ func TestAutodeleteOwnerRefs(t *testing.T) {
expectSetOwnerRef: true,
},
{
name: "always delete",
namespace: "always-delete",
policy: appsv1.StatefulSetPersistentVolumeClaimRetentionPolicy{
WhenDeleted: appsv1.DeletePersistentVolumeClaimRetentionPolicyType,
WhenScaled: appsv1.DeletePersistentVolumeClaimRetentionPolicyType,
@ -475,16 +475,18 @@ func TestAutodeleteOwnerRefs(t *testing.T) {
expectSetOwnerRef: true,
},
}
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.StatefulSetAutoDeletePVC, true)()
_, ctx := ktesting.NewTestContext(t)
closeFn, rm, informers, c := scSetup(ctx, t)
defer closeFn()
cancel := runControllerAndInformers(rm, informers)
defer cancel()
for _, test := range tests {
t.Run(test.name, func(t *testing.T) {
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.StatefulSetAutoDeletePVC, true)()
_, ctx := ktesting.NewTestContext(t)
closeFn, rm, informers, c := scSetup(ctx, t)
defer closeFn()
ns := framework.CreateNamespaceOrDie(c, "test-autodelete-ownerrefs", t)
t.Run(test.namespace, func(t *testing.T) {
ns := framework.CreateNamespaceOrDie(c, test.namespace, t)
defer framework.DeleteNamespaceOrDie(c, ns, t)
cancel := runControllerAndInformers(rm, informers)
defer cancel()
sts := newSTS("sts", ns.Name, 3)
sts.Spec.PersistentVolumeClaimRetentionPolicy = &test.policy