Skip to content

Commit 1c111c6

Browse files
committed
Remove 5 seconds from TestWatchStreamSeparation execution by reusing etcdserver
1 parent 084d6c4 commit 1c111c6

File tree

1 file changed

+28
-3
lines changed

1 file changed

+28
-3
lines changed

staging/src/k8s.io/apiserver/pkg/storage/cacher/cacher_whitebox_test.go

Lines changed: 28 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2471,6 +2471,25 @@ func TestGetBookmarkAfterResourceVersionLockedFunc(t *testing.T) {
24712471
}
24722472

24732473
func TestWatchStreamSeparation(t *testing.T) {
2474+
server, etcdStorage := newEtcdTestStorage(t, etcd3testing.PathPrefix())
2475+
t.Cleanup(func() {
2476+
server.Terminate(t)
2477+
})
2478+
setupOpts := &setupOptions{}
2479+
withDefaults(setupOpts)
2480+
config := Config{
2481+
Storage: etcdStorage,
2482+
Versioner: storage.APIObjectVersioner{},
2483+
GroupResource: schema.GroupResource{Resource: "pods"},
2484+
ResourcePrefix: setupOpts.resourcePrefix,
2485+
KeyFunc: setupOpts.keyFunc,
2486+
GetAttrsFunc: GetPodAttrs,
2487+
NewFunc: newPod,
2488+
NewListFunc: newPodList,
2489+
IndexerFuncs: setupOpts.indexerFuncs,
2490+
Codec: codecs.LegacyCodec(examplev1.SchemeGroupVersion),
2491+
Clock: setupOpts.clock,
2492+
}
24742493
tcs := []struct {
24752494
name string
24762495
separateCacheWatchRPC bool
@@ -2508,8 +2527,10 @@ func TestWatchStreamSeparation(t *testing.T) {
25082527
for _, tc := range tcs {
25092528
t.Run(tc.name, func(t *testing.T) {
25102529
featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.SeparateCacheWatchRPC, tc.separateCacheWatchRPC)
2511-
_, cacher, _, terminate := testSetupWithEtcdServer(t)
2512-
t.Cleanup(terminate)
2530+
cacher, err := NewCacherFromConfig(config)
2531+
if err != nil {
2532+
t.Fatalf("Failed to initialize cacher: %v", err)
2533+
}
25132534

25142535
if !utilfeature.DefaultFeatureGate.Enabled(features.ResilientWatchCacheInitialization) {
25152536
if err := cacher.ready.wait(context.TODO()); err != nil {
@@ -2527,7 +2548,11 @@ func TestWatchStreamSeparation(t *testing.T) {
25272548
waitForEtcdBookmark := watchAndWaitForBookmark(t, waitContext, cacher.storage)
25282549

25292550
var out example.Pod
2530-
err := cacher.Create(context.Background(), "foo", &example.Pod{}, &out, 0)
2551+
err = cacher.Create(context.Background(), "foo", &example.Pod{}, &out, 0)
2552+
if err != nil {
2553+
t.Fatal(err)
2554+
}
2555+
err = cacher.Delete(context.Background(), "foo", &out, nil, storage.ValidateAllObjectFunc, &example.Pod{})
25312556
if err != nil {
25322557
t.Fatal(err)
25332558
}

0 commit comments

Comments
 (0)