Skip to content

Commit 6fb374f

Browse files
author
Mateus Oliveira
authored
✨ (go/v4): Standardize the webhook and controller test suites (#4447)
fix: standardize scaffold test suites Signed-off-by: Mateus Oliveira <[email protected]>
1 parent 88f606f commit 6fb374f

File tree

30 files changed

+168
-162
lines changed

30 files changed

+168
-162
lines changed

docs/book/src/cronjob-tutorial/testdata/project/internal/controller/suite_test.go

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -56,12 +56,12 @@ Now, let's go through the code generated.
5656
*/
5757

5858
var (
59+
ctx context.Context
60+
cancel context.CancelFunc
61+
testEnv *envtest.Environment
5962
cfg *rest.Config
6063
k8sClient client.Client // You'll be using this client in your tests.
61-
testEnv *envtest.Environment
6264
)
63-
var ctx context.Context
64-
var cancel context.CancelFunc
6565

6666
func TestControllers(t *testing.T) {
6767
RegisterFailHandler(Fail)
@@ -156,7 +156,6 @@ var _ = BeforeSuite(func() {
156156
err = k8sManager.Start(ctx)
157157
Expect(err).ToNot(HaveOccurred(), "failed to run manager")
158158
}()
159-
160159
})
161160

162161
/*

docs/book/src/cronjob-tutorial/testdata/project/internal/webhook/v1/webhook_suite_test.go

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,6 @@ import (
3030
. "github.com/onsi/gomega"
3131

3232
admissionv1 "k8s.io/api/admission/v1"
33-
34-
batchv1 "tutorial.kubebuilder.io/project/api/v1"
35-
36-
// +kubebuilder:scaffold:imports
3733
apimachineryruntime "k8s.io/apimachinery/pkg/runtime"
3834
"k8s.io/client-go/rest"
3935
ctrl "sigs.k8s.io/controller-runtime"
@@ -43,16 +39,19 @@ import (
4339
"sigs.k8s.io/controller-runtime/pkg/log/zap"
4440
metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
4541
"sigs.k8s.io/controller-runtime/pkg/webhook"
42+
43+
batchv1 "tutorial.kubebuilder.io/project/api/v1"
44+
// +kubebuilder:scaffold:imports
4645
)
4746

4847
// These tests use Ginkgo (BDD-style Go testing framework). Refer to
4948
// http://onsi.github.io/ginkgo/ to learn more about Ginkgo.
5049

5150
var (
52-
cancel context.CancelFunc
53-
cfg *rest.Config
5451
ctx context.Context
52+
cancel context.CancelFunc
5553
k8sClient client.Client
54+
cfg *rest.Config
5655
testEnv *envtest.Environment
5756
)
5857

docs/book/src/getting-started/testdata/project/internal/controller/suite_test.go

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -39,11 +39,13 @@ import (
3939
// These tests use Ginkgo (BDD-style Go testing framework). Refer to
4040
// http://onsi.github.io/ginkgo/ to learn more about Ginkgo.
4141

42-
var cfg *rest.Config
43-
var k8sClient client.Client
44-
var testEnv *envtest.Environment
45-
var ctx context.Context
46-
var cancel context.CancelFunc
42+
var (
43+
ctx context.Context
44+
cancel context.CancelFunc
45+
testEnv *envtest.Environment
46+
cfg *rest.Config
47+
k8sClient client.Client
48+
)
4749

4850
func TestControllers(t *testing.T) {
4951
RegisterFailHandler(Fail)
@@ -81,7 +83,6 @@ var _ = BeforeSuite(func() {
8183
k8sClient, err = client.New(cfg, client.Options{Scheme: scheme.Scheme})
8284
Expect(err).NotTo(HaveOccurred())
8385
Expect(k8sClient).NotTo(BeNil())
84-
8586
})
8687

8788
var _ = AfterSuite(func() {

docs/book/src/multiversion-tutorial/testdata/project/internal/controller/suite_test.go

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -56,12 +56,12 @@ Now, let's go through the code generated.
5656
*/
5757

5858
var (
59+
ctx context.Context
60+
cancel context.CancelFunc
61+
testEnv *envtest.Environment
5962
cfg *rest.Config
6063
k8sClient client.Client // You'll be using this client in your tests.
61-
testEnv *envtest.Environment
6264
)
63-
var ctx context.Context
64-
var cancel context.CancelFunc
6565

6666
func TestControllers(t *testing.T) {
6767
RegisterFailHandler(Fail)
@@ -156,7 +156,6 @@ var _ = BeforeSuite(func() {
156156
err = k8sManager.Start(ctx)
157157
Expect(err).ToNot(HaveOccurred(), "failed to run manager")
158158
}()
159-
160159
})
161160

162161
/*

docs/book/src/multiversion-tutorial/testdata/project/internal/webhook/v1/webhook_suite_test.go

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,6 @@ import (
3030
. "github.com/onsi/gomega"
3131

3232
admissionv1 "k8s.io/api/admission/v1"
33-
34-
batchv1 "tutorial.kubebuilder.io/project/api/v1"
35-
36-
// +kubebuilder:scaffold:imports
3733
apimachineryruntime "k8s.io/apimachinery/pkg/runtime"
3834
"k8s.io/client-go/rest"
3935
ctrl "sigs.k8s.io/controller-runtime"
@@ -43,16 +39,19 @@ import (
4339
"sigs.k8s.io/controller-runtime/pkg/log/zap"
4440
metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
4541
"sigs.k8s.io/controller-runtime/pkg/webhook"
42+
43+
batchv1 "tutorial.kubebuilder.io/project/api/v1"
44+
// +kubebuilder:scaffold:imports
4645
)
4746

4847
// These tests use Ginkgo (BDD-style Go testing framework). Refer to
4948
// http://onsi.github.io/ginkgo/ to learn more about Ginkgo.
5049

5150
var (
52-
cancel context.CancelFunc
53-
cfg *rest.Config
5451
ctx context.Context
52+
cancel context.CancelFunc
5553
k8sClient client.Client
54+
cfg *rest.Config
5655
testEnv *envtest.Environment
5756
)
5857

docs/book/src/multiversion-tutorial/testdata/project/internal/webhook/v2/webhook_suite_test.go

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,6 @@ import (
3030
. "github.com/onsi/gomega"
3131

3232
admissionv1 "k8s.io/api/admission/v1"
33-
34-
batchv2 "tutorial.kubebuilder.io/project/api/v2"
35-
36-
// +kubebuilder:scaffold:imports
3733
apimachineryruntime "k8s.io/apimachinery/pkg/runtime"
3834
"k8s.io/client-go/rest"
3935
ctrl "sigs.k8s.io/controller-runtime"
@@ -43,16 +39,19 @@ import (
4339
"sigs.k8s.io/controller-runtime/pkg/log/zap"
4440
metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
4541
"sigs.k8s.io/controller-runtime/pkg/webhook"
42+
43+
batchv2 "tutorial.kubebuilder.io/project/api/v2"
44+
// +kubebuilder:scaffold:imports
4645
)
4746

4847
// These tests use Ginkgo (BDD-style Go testing framework). Refer to
4948
// http://onsi.github.io/ginkgo/ to learn more about Ginkgo.
5049

5150
var (
52-
cancel context.CancelFunc
53-
cfg *rest.Config
5451
ctx context.Context
52+
cancel context.CancelFunc
5553
k8sClient client.Client
54+
cfg *rest.Config
5655
testEnv *envtest.Environment
5756
)
5857

hack/docs/internal/cronjob-tutorial/generate_cronjob.go

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -527,9 +527,13 @@ func (sp *Sample) updateSuiteTest() {
527527
err = pluginutil.ReplaceInFile(
528528
filepath.Join(sp.ctx.Dir, "internal/controller/suite_test.go"),
529529
`
530-
var cfg *rest.Config
531-
var k8sClient client.Client
532-
var testEnv *envtest.Environment
530+
var (
531+
ctx context.Context
532+
cancel context.CancelFunc
533+
testEnv *envtest.Environment
534+
cfg *rest.Config
535+
k8sClient client.Client
536+
)
533537
`, SuiteTestEnv)
534538
hackutils.CheckError("updating suite_test.go to add more variables", err)
535539

hack/docs/internal/cronjob-tutorial/writing_tests_env.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,11 @@ Now, let's go through the code generated.
3535
*/
3636
3737
var (
38+
ctx context.Context
39+
cancel context.CancelFunc
40+
testEnv *envtest.Environment
3841
cfg *rest.Config
3942
k8sClient client.Client // You'll be using this client in your tests.
40-
testEnv *envtest.Environment
4143
)
4244
`
4345

pkg/plugins/golang/v4/scaffolds/internal/templates/controllers/controller_suitetest.go

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -152,11 +152,13 @@ import (
152152
// These tests use Ginkgo (BDD-style Go testing framework). Refer to
153153
// http://onsi.github.io/ginkgo/ to learn more about Ginkgo.
154154
155-
var cfg *rest.Config
156-
var k8sClient client.Client
157-
var testEnv *envtest.Environment
158-
var ctx context.Context
159-
var cancel context.CancelFunc
155+
var (
156+
ctx context.Context
157+
cancel context.CancelFunc
158+
testEnv *envtest.Environment
159+
cfg *rest.Config
160+
k8sClient client.Client
161+
)
160162
161163
func TestControllers(t *testing.T) {
162164
RegisterFailHandler(Fail)
@@ -191,7 +193,6 @@ var _ = BeforeSuite(func() {
191193
k8sClient, err = client.New(cfg, client.Options{Scheme: scheme.Scheme})
192194
Expect(err).NotTo(HaveOccurred())
193195
Expect(k8sClient).NotTo(BeNil())
194-
195196
})
196197
197198
var _ = AfterSuite(func() {
@@ -207,7 +208,7 @@ var _ = AfterSuite(func() {
207208
// Makefile targets, the 'BinaryAssetsDirectory' must be explicitly configured.
208209
//
209210
// This function streamlines the process by finding the required binaries, similar to
210-
// setting the 'KUBEBUILDER_ASSETS' environment variable. To ensure the binaries are
211+
// setting the 'KUBEBUILDER_ASSETS' environment variable. To ensure the binaries are
211212
// properly set up, run 'make setup-envtest' beforehand.
212213
func getFirstFoundEnvTestBinaryDir() string {
213214
basePath := filepath.Join({{ .CRDDirectoryRelativePath }}, "bin", "k8s")

pkg/plugins/golang/v4/scaffolds/internal/templates/webhooks/webhook_suitetest.go

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -195,26 +195,27 @@ import (
195195
196196
. "github.com/onsi/ginkgo/v2"
197197
. "github.com/onsi/gomega"
198-
%s
198+
199+
apimachineryruntime "k8s.io/apimachinery/pkg/runtime"
199200
"k8s.io/client-go/kubernetes/scheme"
200201
"k8s.io/client-go/rest"
201-
apimachineryruntime "k8s.io/apimachinery/pkg/runtime"
202202
ctrl "sigs.k8s.io/controller-runtime"
203203
"sigs.k8s.io/controller-runtime/pkg/client"
204204
"sigs.k8s.io/controller-runtime/pkg/envtest"
205205
logf "sigs.k8s.io/controller-runtime/pkg/log"
206-
"sigs.k8s.io/controller-runtime/pkg/log/zap"
207206
metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
207+
"sigs.k8s.io/controller-runtime/pkg/log/zap"
208+
%s
208209
)
209210
210211
// These tests use Ginkgo (BDD-style Go testing framework). Refer to
211212
// http://onsi.github.io/ginkgo/ to learn more about Ginkgo.
212213
213214
var (
214-
cancel context.CancelFunc
215-
cfg *rest.Config
216215
ctx context.Context
216+
cancel context.CancelFunc
217217
k8sClient client.Client
218+
cfg *rest.Config
218219
testEnv *envtest.Environment
219220
)
220221

testdata/project-v4-multigroup/internal/controller/apps/suite_test.go

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,13 @@ import (
3838
// These tests use Ginkgo (BDD-style Go testing framework). Refer to
3939
// http://onsi.github.io/ginkgo/ to learn more about Ginkgo.
4040

41-
var cfg *rest.Config
42-
var k8sClient client.Client
43-
var testEnv *envtest.Environment
44-
var ctx context.Context
45-
var cancel context.CancelFunc
41+
var (
42+
ctx context.Context
43+
cancel context.CancelFunc
44+
testEnv *envtest.Environment
45+
cfg *rest.Config
46+
k8sClient client.Client
47+
)
4648

4749
func TestControllers(t *testing.T) {
4850
RegisterFailHandler(Fail)
@@ -80,7 +82,6 @@ var _ = BeforeSuite(func() {
8082
k8sClient, err = client.New(cfg, client.Options{Scheme: scheme.Scheme})
8183
Expect(err).NotTo(HaveOccurred())
8284
Expect(k8sClient).NotTo(BeNil())
83-
8485
})
8586

8687
var _ = AfterSuite(func() {

testdata/project-v4-multigroup/internal/controller/cert-manager/suite_test.go

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,13 @@ import (
3838
// These tests use Ginkgo (BDD-style Go testing framework). Refer to
3939
// http://onsi.github.io/ginkgo/ to learn more about Ginkgo.
4040

41-
var cfg *rest.Config
42-
var k8sClient client.Client
43-
var testEnv *envtest.Environment
44-
var ctx context.Context
45-
var cancel context.CancelFunc
41+
var (
42+
ctx context.Context
43+
cancel context.CancelFunc
44+
testEnv *envtest.Environment
45+
cfg *rest.Config
46+
k8sClient client.Client
47+
)
4648

4749
func TestControllers(t *testing.T) {
4850
RegisterFailHandler(Fail)
@@ -80,7 +82,6 @@ var _ = BeforeSuite(func() {
8082
k8sClient, err = client.New(cfg, client.Options{Scheme: scheme.Scheme})
8183
Expect(err).NotTo(HaveOccurred())
8284
Expect(k8sClient).NotTo(BeNil())
83-
8485
})
8586

8687
var _ = AfterSuite(func() {

testdata/project-v4-multigroup/internal/controller/crew/suite_test.go

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -39,11 +39,13 @@ import (
3939
// These tests use Ginkgo (BDD-style Go testing framework). Refer to
4040
// http://onsi.github.io/ginkgo/ to learn more about Ginkgo.
4141

42-
var cfg *rest.Config
43-
var k8sClient client.Client
44-
var testEnv *envtest.Environment
45-
var ctx context.Context
46-
var cancel context.CancelFunc
42+
var (
43+
ctx context.Context
44+
cancel context.CancelFunc
45+
testEnv *envtest.Environment
46+
cfg *rest.Config
47+
k8sClient client.Client
48+
)
4749

4850
func TestControllers(t *testing.T) {
4951
RegisterFailHandler(Fail)
@@ -81,7 +83,6 @@ var _ = BeforeSuite(func() {
8183
k8sClient, err = client.New(cfg, client.Options{Scheme: scheme.Scheme})
8284
Expect(err).NotTo(HaveOccurred())
8385
Expect(k8sClient).NotTo(BeNil())
84-
8586
})
8687

8788
var _ = AfterSuite(func() {

testdata/project-v4-multigroup/internal/controller/example.com/suite_test.go

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -40,11 +40,13 @@ import (
4040
// These tests use Ginkgo (BDD-style Go testing framework). Refer to
4141
// http://onsi.github.io/ginkgo/ to learn more about Ginkgo.
4242

43-
var cfg *rest.Config
44-
var k8sClient client.Client
45-
var testEnv *envtest.Environment
46-
var ctx context.Context
47-
var cancel context.CancelFunc
43+
var (
44+
ctx context.Context
45+
cancel context.CancelFunc
46+
testEnv *envtest.Environment
47+
cfg *rest.Config
48+
k8sClient client.Client
49+
)
4850

4951
func TestControllers(t *testing.T) {
5052
RegisterFailHandler(Fail)
@@ -85,7 +87,6 @@ var _ = BeforeSuite(func() {
8587
k8sClient, err = client.New(cfg, client.Options{Scheme: scheme.Scheme})
8688
Expect(err).NotTo(HaveOccurred())
8789
Expect(k8sClient).NotTo(BeNil())
88-
8990
})
9091

9192
var _ = AfterSuite(func() {

0 commit comments

Comments
 (0)