Merge pull request #72797 from misterikkit/featuregate

Allow FeatureGate values to be overridden in benchmarks.

Kubernetes-commit: be3e6a1abf544e0f43bd083fb53e5abf4821ca77
This commit is contained in:
Kubernetes Publisher 2019-01-11 15:54:01 -08:00
commit dc8ef36b83
1 changed files with 3 additions and 3 deletions

View File

@ -29,16 +29,16 @@ import (
// Example use:
//
// defer utilfeaturetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.<FeatureName>, true)()
func SetFeatureGateDuringTest(t *testing.T, gate feature.FeatureGate, f feature.Feature, value bool) func() {
func SetFeatureGateDuringTest(tb testing.TB, gate feature.FeatureGate, f feature.Feature, value bool) func() {
originalValue := gate.Enabled(f)
if err := gate.(feature.MutableFeatureGate).Set(fmt.Sprintf("%s=%v", f, value)); err != nil {
t.Errorf("error setting %s=%v: %v", f, value, err)
tb.Errorf("error setting %s=%v: %v", f, value, err)
}
return func() {
if err := gate.(feature.MutableFeatureGate).Set(fmt.Sprintf("%s=%v", f, originalValue)); err != nil {
t.Errorf("error restoring %s=%v: %v", f, originalValue, err)
tb.Errorf("error restoring %s=%v: %v", f, originalValue, err)
}
}
}