11package job
22
33import (
4+ "github.com/SneaksAndData/arcane-operator/tests/mocks/job_mock"
5+ "go.uber.org/mock/gomock"
46 "testing"
57
68 "github.com/stretchr/testify/require"
@@ -24,7 +26,12 @@ func Test_SecretReferenceConfigurator_Add_SecretRef_To_Empty_Job(t *testing.T) {
2426 },
2527 }
2628
27- configurator := NewSecretReferenceConfigurator (& corev1.LocalObjectReference {Name : "my-secret" })
29+ mockCtrl := gomock .NewController (t )
30+ defer mockCtrl .Finish ()
31+ mockProvider := job_mock .NewMockSecretReferenceProvider (mockCtrl )
32+ mockProvider .EXPECT ().GetReferenceForSecret ("test-secret" ).Return (& corev1.LocalObjectReference {Name : "my-secret" }, nil )
33+
34+ configurator := NewSecretReferenceConfigurator ("test-secret" , mockProvider )
2835 err := configurator .ConfigureJob (job )
2936 require .NoError (t , err )
3037 require .NotNil (t , job .Spec .Template .Spec .Containers [0 ].EnvFrom )
@@ -58,7 +65,12 @@ func Test_SecretReferenceConfigurator_Append_To_Existing_EnvFrom(t *testing.T) {
5865 },
5966 }
6067
61- configurator := NewSecretReferenceConfigurator (& corev1.LocalObjectReference {Name : "new-secret" })
68+ mockCtrl := gomock .NewController (t )
69+ defer mockCtrl .Finish ()
70+ mockProvider := job_mock .NewMockSecretReferenceProvider (mockCtrl )
71+ mockProvider .EXPECT ().GetReferenceForSecret ("test-secret" ).Return (& corev1.LocalObjectReference {Name : "new-secret" }, nil )
72+
73+ configurator := NewSecretReferenceConfigurator ("test-secret" , mockProvider )
6274 err := configurator .ConfigureJob (job )
6375 require .NoError (t , err )
6476 require .Len (t , job .Spec .Template .Spec .Containers [0 ].EnvFrom , 2 )
@@ -79,7 +91,12 @@ func Test_SecretReferenceConfigurator_No_Containers(t *testing.T) {
7991 },
8092 }
8193
82- configurator := NewSecretReferenceConfigurator (& corev1.LocalObjectReference {Name : "my-secret" })
94+ mockCtrl := gomock .NewController (t )
95+ defer mockCtrl .Finish ()
96+ mockProvider := job_mock .NewMockSecretReferenceProvider (mockCtrl )
97+ mockProvider .EXPECT ().GetReferenceForSecret ("test-secret" ).Return (& corev1.LocalObjectReference {Name : "my-secret" }, nil )
98+
99+ configurator := NewSecretReferenceConfigurator ("test-secret" , mockProvider )
83100 err := configurator .ConfigureJob (job )
84101 require .NoError (t , err )
85102 require .Empty (t , job .Spec .Template .Spec .Containers )
@@ -96,7 +113,12 @@ func Test_SecretReferenceConfigurator_Nil_Containers(t *testing.T) {
96113 },
97114 }
98115
99- configurator := NewSecretReferenceConfigurator (& corev1.LocalObjectReference {Name : "my-secret" })
116+ mockCtrl := gomock .NewController (t )
117+ defer mockCtrl .Finish ()
118+ mockProvider := job_mock .NewMockSecretReferenceProvider (mockCtrl )
119+ mockProvider .EXPECT ().GetReferenceForSecret ("test-secret" ).Return (& corev1.LocalObjectReference {Name : "my-secret" }, nil )
120+
121+ configurator := NewSecretReferenceConfigurator ("test-secret" , mockProvider )
100122 err := configurator .ConfigureJob (job )
101123 require .NoError (t , err )
102124 require .Nil (t , job .Spec .Template .Spec .Containers )
@@ -118,11 +140,18 @@ func Test_SecretReferenceConfigurator_Multiple_Secrets(t *testing.T) {
118140 },
119141 }
120142
121- configurator1 := NewSecretReferenceConfigurator (& corev1.LocalObjectReference {Name : "first-secret" })
143+ mockCtrl := gomock .NewController (t )
144+ defer mockCtrl .Finish ()
145+
146+ mockProvider1 := job_mock .NewMockSecretReferenceProvider (mockCtrl )
147+ mockProvider1 .EXPECT ().GetReferenceForSecret ("secret1" ).Return (& corev1.LocalObjectReference {Name : "first-secret" }, nil )
148+ configurator1 := NewSecretReferenceConfigurator ("secret1" , mockProvider1 )
122149 err := configurator1 .ConfigureJob (job )
123150 require .NoError (t , err )
124151
125- configurator2 := NewSecretReferenceConfigurator (& corev1.LocalObjectReference {Name : "second-secret" })
152+ mockProvider2 := job_mock .NewMockSecretReferenceProvider (mockCtrl )
153+ mockProvider2 .EXPECT ().GetReferenceForSecret ("secret2" ).Return (& corev1.LocalObjectReference {Name : "second-secret" }, nil )
154+ configurator2 := NewSecretReferenceConfigurator ("secret2" , mockProvider2 )
126155 err = configurator2 .ConfigureJob (job )
127156 require .NoError (t , err )
128157
@@ -147,7 +176,12 @@ func Test_SecretReferenceConfigurator_Empty_Secret_Name(t *testing.T) {
147176 },
148177 }
149178
150- configurator := NewSecretReferenceConfigurator (& corev1.LocalObjectReference {Name : "" })
179+ mockCtrl := gomock .NewController (t )
180+ defer mockCtrl .Finish ()
181+ mockProvider := job_mock .NewMockSecretReferenceProvider (mockCtrl )
182+ mockProvider .EXPECT ().GetReferenceForSecret ("test-secret" ).Return (& corev1.LocalObjectReference {Name : "" }, nil )
183+
184+ configurator := NewSecretReferenceConfigurator ("test-secret" , mockProvider )
151185 err := configurator .ConfigureJob (job )
152186 require .EqualError (t , err , "secretReferenceConfigurator reference name is empty" )
153187}
@@ -176,7 +210,12 @@ func Test_SecretReferenceConfigurator_Affects_All_Containers(t *testing.T) {
176210 },
177211 }
178212
179- configurator := NewSecretReferenceConfigurator (& corev1.LocalObjectReference {Name : "my-secret" })
213+ mockCtrl := gomock .NewController (t )
214+ defer mockCtrl .Finish ()
215+ mockProvider := job_mock .NewMockSecretReferenceProvider (mockCtrl )
216+ mockProvider .EXPECT ().GetReferenceForSecret ("test-secret" ).Return (& corev1.LocalObjectReference {Name : "my-secret" }, nil )
217+
218+ configurator := NewSecretReferenceConfigurator ("test-secret" , mockProvider )
180219 err := configurator .ConfigureJob (job )
181220 require .NoError (t , err )
182221
@@ -216,7 +255,12 @@ func Test_SecretReferenceConfigurator_With_Existing_SecretRef(t *testing.T) {
216255 },
217256 }
218257
219- configurator := NewSecretReferenceConfigurator (& corev1.LocalObjectReference {Name : "new-secret" })
258+ mockCtrl := gomock .NewController (t )
259+ defer mockCtrl .Finish ()
260+ mockProvider := job_mock .NewMockSecretReferenceProvider (mockCtrl )
261+ mockProvider .EXPECT ().GetReferenceForSecret ("test-secret" ).Return (& corev1.LocalObjectReference {Name : "new-secret" }, nil )
262+
263+ configurator := NewSecretReferenceConfigurator ("test-secret" , mockProvider )
220264 err := configurator .ConfigureJob (job )
221265 require .NoError (t , err )
222266
0 commit comments