@@ -13,7 +13,6 @@ package controllers_test
13
13
import (
14
14
"context"
15
15
"path/filepath"
16
- "sync"
17
16
"testing"
18
17
19
18
"k8s.io/client-go/util/retry"
@@ -43,22 +42,15 @@ var (
43
42
testEnv * envtest.Environment
44
43
client runtimeClient.Client
45
44
clientSet * kubernetes.Clientset
46
- stopMgr chan struct {}
47
- mgrStopped * sync.WaitGroup
48
45
scheme * runtime.Scheme
49
46
fakeExecutor * fakePodExecutor
50
47
ctx = context .Background ()
48
+ cancelFunc context.CancelFunc
51
49
updateWithRetry = func (cr * rabbitmqv1beta1.RabbitmqCluster , mutateFn func (r * rabbitmqv1beta1.RabbitmqCluster )) error {
52
50
return retry .RetryOnConflict (retry .DefaultRetry , func () error {
53
- objKey , err := runtimeClient .ObjectKeyFromObject (cr )
54
- if err != nil {
51
+ if err := client .Get (ctx , runtimeClient .ObjectKeyFromObject (cr ), cr ); err != nil {
55
52
return err
56
53
}
57
-
58
- if err := client .Get (ctx , objKey , cr ); err != nil {
59
- return err
60
- }
61
-
62
54
mutateFn (cr )
63
55
return client .Update (ctx , cr )
64
56
})
@@ -93,17 +85,16 @@ var _ = BeforeSuite(func() {
93
85
Expect (rabbitmqv1beta1 .AddToScheme (scheme )).To (Succeed ())
94
86
Expect (defaultscheme .AddToScheme (scheme )).To (Succeed ())
95
87
96
- startManager (scheme )
88
+ cancelFunc = startManager (scheme )
97
89
})
98
90
99
91
var _ = AfterSuite (func () {
100
- close (stopMgr )
101
- mgrStopped .Wait ()
92
+ cancelFunc ()
102
93
By ("tearing down the test environment" )
103
94
Expect (testEnv .Stop ()).To (Succeed ())
104
95
})
105
96
106
- func startManager (scheme * runtime.Scheme ) {
97
+ func startManager (scheme * runtime.Scheme ) context. CancelFunc {
107
98
mgr , err := ctrl .NewManager (cfg , ctrl.Options {Scheme : scheme })
108
99
Expect (err ).NotTo (HaveOccurred ())
109
100
client = mgr .GetClient ()
@@ -119,13 +110,11 @@ func startManager(scheme *runtime.Scheme) {
119
110
}
120
111
Expect (reconciler .SetupWithManager (mgr )).To (Succeed ())
121
112
122
- stopMgr = make (chan struct {})
123
- mgrStopped = & sync.WaitGroup {}
124
- mgrStopped .Add (1 )
113
+ managerCtx , cancel := context .WithCancel (context .Background ())
125
114
go func () {
126
- defer mgrStopped .Done ()
127
- Expect (mgr .Start (stopMgr )).To (Succeed ())
115
+ Expect (mgr .Start (managerCtx )).To (Succeed ())
128
116
}()
117
+ return cancel
129
118
}
130
119
131
120
type fakePodExecutor struct {
0 commit comments