update unit test for adc controller to test volume migration

This commit is contained in:
carlory
2024-03-29 11:54:57 +08:00
parent eeb42fa543
commit 4c1df69b34
5 changed files with 379 additions and 310 deletions

View File

@@ -95,7 +95,6 @@ func TestMigrationFeatureFlagStatus(t *testing.T) {
testCases := []struct {
name string
pluginName string
csiMigrationEnabled bool
pluginFeature featuregate.Feature
pluginFeatureEnabled bool
inTreePluginUnregister featuregate.Feature
@@ -104,21 +103,41 @@ func TestMigrationFeatureFlagStatus(t *testing.T) {
csiMigrationCompleteResult bool
}{
{
name: "gce-pd migration flag enabled and migration-complete flag disabled with CSI migration flag",
pluginName: "kubernetes.io/gce-pd",
name: "portworx-volume migration flag disabled and migration-complete flag disabled with CSI migration flag",
pluginName: "kubernetes.io/portworx-volume",
pluginFeature: features.CSIMigrationPortworx,
pluginFeatureEnabled: false,
inTreePluginUnregister: features.InTreePluginPortworxUnregister,
inTreePluginUnregisterEnabled: false,
csiMigrationResult: false,
csiMigrationCompleteResult: false,
},
{
name: "portworx-volume migration flag disabled and migration-complete flag enabled with CSI migration flag",
pluginName: "kubernetes.io/portworx-volume",
pluginFeature: features.CSIMigrationPortworx,
pluginFeatureEnabled: false,
inTreePluginUnregister: features.InTreePluginPortworxUnregister,
inTreePluginUnregisterEnabled: true,
csiMigrationResult: false,
csiMigrationCompleteResult: false,
},
{
name: "portworx-volume migration flag enabled and migration-complete flag disabled with CSI migration flag",
pluginName: "kubernetes.io/portworx-volume",
pluginFeature: features.CSIMigrationPortworx,
pluginFeatureEnabled: true,
csiMigrationEnabled: true,
inTreePluginUnregister: features.InTreePluginGCEUnregister,
inTreePluginUnregister: features.InTreePluginPortworxUnregister,
inTreePluginUnregisterEnabled: false,
csiMigrationResult: true,
csiMigrationCompleteResult: false,
},
{
name: "gce-pd migration flag enabled and migration-complete flag enabled with CSI migration flag",
pluginName: "kubernetes.io/gce-pd",
name: "portworx-volume migration flag enabled and migration-complete flag enabled with CSI migration flag",
pluginName: "kubernetes.io/portworx-volume",
pluginFeature: features.CSIMigrationPortworx,
pluginFeatureEnabled: true,
csiMigrationEnabled: true,
inTreePluginUnregister: features.InTreePluginGCEUnregister,
inTreePluginUnregister: features.InTreePluginPortworxUnregister,
inTreePluginUnregisterEnabled: true,
csiMigrationResult: true,
csiMigrationCompleteResult: true,
@@ -128,9 +147,6 @@ func TestMigrationFeatureFlagStatus(t *testing.T) {
for _, test := range testCases {
pm := NewPluginManager(csiTranslator, utilfeature.DefaultFeatureGate)
t.Run(fmt.Sprintf("Testing %v", test.name), func(t *testing.T) {
// CSIMigrationGCE is locked to on, so it cannot be enabled or disabled. There are a couple
// of test cases that check correct behavior when CSIMigrationGCE is enabled, but there are
// no longer any tests cases for CSIMigrationGCE being disabled as that is not possible.
if len(test.pluginFeature) > 0 {
featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, test.pluginFeature, test.pluginFeatureEnabled)
}