@@ -17,6 +17,8 @@ limitations under the License.
17
17
package controllers
18
18
19
19
import (
20
+ "fmt"
21
+ "reflect"
20
22
"testing"
21
23
22
24
. "github.com/onsi/gomega"
@@ -103,7 +105,7 @@ func TestRayClusterWebhookDefault(t *testing.T) {
103
105
To (
104
106
And (
105
107
HaveLen (1 ),
106
- ContainElement (WithTransform (ContainerName , Equal (oauthProxyContainerName ))),
108
+ ContainElement (WithTransform (ResourceName , Equal (oauthProxyContainerName ))),
107
109
),
108
110
"Expected the OAuth proxy container to be present in the head group" ,
109
111
)
@@ -114,9 +116,9 @@ func TestRayClusterWebhookDefault(t *testing.T) {
114
116
To (
115
117
And (
116
118
HaveLen (3 ),
117
- ContainElement (WithTransform (VolumeName , Equal (oauthProxyVolumeName ))),
118
- ContainElement (WithTransform (VolumeName , Equal ("ca-vol" ))),
119
- ContainElement (WithTransform (VolumeName , Equal ("server-cert" ))),
119
+ ContainElement (WithTransform (ResourceName , Equal (oauthProxyVolumeName ))),
120
+ ContainElement (WithTransform (ResourceName , Equal ("ca-vol" ))),
121
+ ContainElement (WithTransform (ResourceName , Equal ("server-cert" ))),
120
122
),
121
123
"Expected the OAuth proxy TLS secret and CA volumes to be present in the head group" ,
122
124
)
@@ -133,12 +135,12 @@ func TestRayClusterWebhookDefault(t *testing.T) {
133
135
To (
134
136
And (
135
137
HaveLen (6 ),
136
- ContainElement (WithTransform (EnvVarName , Equal ("COOKIE_SECRET" ))),
137
- ContainElement (WithTransform (EnvVarName , Equal ("MY_POD_IP" ))),
138
- ContainElement (WithTransform (EnvVarName , Equal ("RAY_USE_TLS" ))),
139
- ContainElement (WithTransform (EnvVarName , Equal ("RAY_TLS_SERVER_CERT" ))),
140
- ContainElement (WithTransform (EnvVarName , Equal ("RAY_TLS_SERVER_KEY" ))),
141
- ContainElement (WithTransform (EnvVarName , Equal ("RAY_TLS_CA_CERT" ))),
138
+ ContainElement (WithTransform (ResourceName , Equal ("COOKIE_SECRET" ))),
139
+ ContainElement (WithTransform (ResourceName , Equal ("MY_POD_IP" ))),
140
+ ContainElement (WithTransform (ResourceName , Equal ("RAY_USE_TLS" ))),
141
+ ContainElement (WithTransform (ResourceName , Equal ("RAY_TLS_SERVER_CERT" ))),
142
+ ContainElement (WithTransform (ResourceName , Equal ("RAY_TLS_SERVER_KEY" ))),
143
+ ContainElement (WithTransform (ResourceName , Equal ("RAY_TLS_CA_CERT" ))),
142
144
),
143
145
"Expected the required environment variables to be present in the head group" ,
144
146
)
@@ -149,7 +151,7 @@ func TestRayClusterWebhookDefault(t *testing.T) {
149
151
To (
150
152
And (
151
153
HaveLen (1 ),
152
- ContainElement (WithTransform (ContainerName , Equal (initContainerName ))),
154
+ ContainElement (WithTransform (ResourceName , Equal (initContainerName ))),
153
155
),
154
156
"Expected the create-cert init container to be present in the head group" ,
155
157
)
@@ -160,9 +162,9 @@ func TestRayClusterWebhookDefault(t *testing.T) {
160
162
To (
161
163
And (
162
164
HaveLen (3 ),
163
- ContainElement (WithTransform (VolumeMountName , Equal (oauthProxyVolumeName ))),
164
- ContainElement (WithTransform (VolumeMountName , Equal ("ca-vol" ))),
165
- ContainElement (WithTransform (VolumeMountName , Equal ("server-cert" ))),
165
+ ContainElement (WithTransform (ResourceName , Equal (oauthProxyVolumeName ))),
166
+ ContainElement (WithTransform (ResourceName , Equal ("ca-vol" ))),
167
+ ContainElement (WithTransform (ResourceName , Equal ("server-cert" ))),
166
168
),
167
169
"Expected the OAuth proxy TLS secret and CA volume mounts to be present in the head group" ,
168
170
)
@@ -174,11 +176,11 @@ func TestRayClusterWebhookDefault(t *testing.T) {
174
176
To (
175
177
And (
176
178
HaveLen (5 ),
177
- ContainElement (WithTransform (EnvVarName , Equal ("MY_POD_IP" ))),
178
- ContainElement (WithTransform (EnvVarName , Equal ("RAY_USE_TLS" ))),
179
- ContainElement (WithTransform (EnvVarName , Equal ("RAY_TLS_SERVER_CERT" ))),
180
- ContainElement (WithTransform (EnvVarName , Equal ("RAY_TLS_SERVER_KEY" ))),
181
- ContainElement (WithTransform (EnvVarName , Equal ("RAY_TLS_CA_CERT" ))),
179
+ ContainElement (WithTransform (ResourceName , Equal ("MY_POD_IP" ))),
180
+ ContainElement (WithTransform (ResourceName , Equal ("RAY_USE_TLS" ))),
181
+ ContainElement (WithTransform (ResourceName , Equal ("RAY_TLS_SERVER_CERT" ))),
182
+ ContainElement (WithTransform (ResourceName , Equal ("RAY_TLS_SERVER_KEY" ))),
183
+ ContainElement (WithTransform (ResourceName , Equal ("RAY_TLS_CA_CERT" ))),
182
184
),
183
185
"Expected the required environment variables to be present in each worker group" ,
184
186
)
@@ -191,8 +193,8 @@ func TestRayClusterWebhookDefault(t *testing.T) {
191
193
To (
192
194
And (
193
195
HaveLen (2 ),
194
- ContainElement (WithTransform (VolumeName , Equal ("ca-vol" ))),
195
- ContainElement (WithTransform (VolumeName , Equal ("server-cert" ))),
196
+ ContainElement (WithTransform (ResourceName , Equal ("ca-vol" ))),
197
+ ContainElement (WithTransform (ResourceName , Equal ("server-cert" ))),
196
198
),
197
199
"Expected the required CA volumes to be present in each worker group" ,
198
200
)
@@ -205,8 +207,8 @@ func TestRayClusterWebhookDefault(t *testing.T) {
205
207
To (
206
208
And (
207
209
HaveLen (2 ),
208
- ContainElement (WithTransform (VolumeMountName , Equal ("ca-vol" ))),
209
- ContainElement (WithTransform (VolumeMountName , Equal ("server-cert" ))),
210
+ ContainElement (WithTransform (ResourceName , Equal ("ca-vol" ))),
211
+ ContainElement (WithTransform (ResourceName , Equal ("server-cert" ))),
210
212
),
211
213
"Expected the required certificate volume mounts to be present in each worker group" ,
212
214
)
@@ -219,7 +221,7 @@ func TestRayClusterWebhookDefault(t *testing.T) {
219
221
To (
220
222
And (
221
223
HaveLen (1 ),
222
- ContainElement (WithTransform (ContainerName , Equal (initContainerName ))),
224
+ ContainElement (WithTransform (ResourceName , Equal (initContainerName ))),
223
225
),
224
226
"Expected the required init container to be present in each worker group" ,
225
227
)
@@ -646,22 +648,10 @@ func TestValidateUpdate(t *testing.T) {
646
648
})
647
649
}
648
650
649
- func ContainerName (container corev1.Container ) string {
650
- return container .Name
651
- }
652
-
653
- func VolumeName (volume corev1.Volume ) string {
654
- return volume .Name
655
- }
656
-
657
- func ServiceAccountName (serviceAccount corev1.ServiceAccount ) string {
658
- return serviceAccount .Name
659
- }
660
-
661
- func VolumeMountName (volumeMount corev1.VolumeMount ) string {
662
- return volumeMount .Name
663
- }
664
-
665
- func EnvVarName (envVar corev1.EnvVar ) string {
666
- return envVar .Name
651
+ func ResourceName (obj any ) (string , error ) {
652
+ value := reflect .ValueOf (obj )
653
+ if value .Kind () != reflect .Struct {
654
+ return "" , fmt .Errorf ("input must be a struct" )
655
+ }
656
+ return value .FieldByName ("Name" ).String (), nil
667
657
}
0 commit comments