test: Set RateLimiter via client config vs direct casting

This test has no need to perform a dereference to an implementation,
it can instead set the rate limited during initialization.
This commit is contained in:
Clayton Coleman 2019-11-03 15:13:17 -05:00
parent 3f94f80b0a
commit 0ba0ef057a
No known key found for this signature in database
GPG Key ID: 3D16906B4F1C5CB3
2 changed files with 7 additions and 5 deletions

View File

@ -54,7 +54,6 @@ go_library(
"//staging/src/k8s.io/apimachinery/pkg/watch:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/authentication/serviceaccount:go_default_library",
"//staging/src/k8s.io/client-go/kubernetes:go_default_library",
"//staging/src/k8s.io/client-go/rest:go_default_library",
"//staging/src/k8s.io/client-go/tools/cache:go_default_library",
"//staging/src/k8s.io/client-go/util/flowcontrol:go_default_library",
"//staging/src/k8s.io/client-go/util/workqueue:go_default_library",

View File

@ -27,7 +27,7 @@ import (
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/util/sets"
"k8s.io/apimachinery/pkg/watch"
restclient "k8s.io/client-go/rest"
"k8s.io/client-go/kubernetes"
"k8s.io/client-go/tools/cache"
"k8s.io/client-go/util/flowcontrol"
"k8s.io/kubernetes/test/e2e/framework"
@ -77,9 +77,12 @@ var _ = SIGDescribe("Service endpoints latency", func() {
)
// Turn off rate limiting--it interferes with our measurements.
oldThrottle := f.ClientSet.CoreV1().RESTClient().GetRateLimiter()
f.ClientSet.CoreV1().RESTClient().(*restclient.RESTClient).Throttle = flowcontrol.NewFakeAlwaysRateLimiter()
defer func() { f.ClientSet.CoreV1().RESTClient().(*restclient.RESTClient).Throttle = oldThrottle }()
cfg, err := framework.LoadConfig()
if err != nil {
framework.Failf("Unable to load config: %v", err)
}
cfg.RateLimiter = flowcontrol.NewFakeAlwaysRateLimiter()
f.ClientSet = kubernetes.NewForConfigOrDie(cfg)
failing := sets.NewString()
d, err := runServiceLatencies(f, parallelTrials, totalTrials, acceptableFailureRatio)