MCPcopy Index your code
hub / github.com/crossplane-contrib/function-patch-and-transform / ValidateTransform

Function ValidateTransform

validate.go:251–286  ·  view source on GitHub ↗

ValidateTransform validates a Transform.

(t v1beta1.Transform)

Source from the content-addressed store, hash-verified

249
250// ValidateTransform validates a Transform.
251func ValidateTransform(t v1beta1.Transform) *field.Error { //nolint:gocyclo // This is a long but simple/same-y switch.
252 switch t.Type {
253 case v1beta1.TransformTypeMath:
254 if t.Math == nil {
255 return field.Required(field.NewPath("math"), "given transform type math requires configuration")
256 }
257 return WrapFieldError(ValidateMathTransform(t.Math), field.NewPath("math"))
258 case v1beta1.TransformTypeMap:
259 if t.Map == nil {
260 return field.Required(field.NewPath("map"), "given transform type map requires configuration")
261 }
262 return WrapFieldError(ValidateMapTransform(t.Map), field.NewPath("map"))
263 case v1beta1.TransformTypeMatch:
264 if t.Match == nil {
265 return field.Required(field.NewPath("match"), "given transform type match requires configuration")
266 }
267 return WrapFieldError(ValidateMatchTransform(t.Match), field.NewPath("match"))
268 case v1beta1.TransformTypeString:
269 if t.String == nil {
270 return field.Required(field.NewPath("string"), "given transform type string requires configuration")
271 }
272 return WrapFieldError(ValidateStringTransform(t.String), field.NewPath("string"))
273 case v1beta1.TransformTypeConvert:
274 if t.Convert == nil {
275 return field.Required(field.NewPath("convert"), "given transform type convert requires configuration")
276 }
277 if err := ValidateConvertTransform(t.Convert); err != nil {
278 return WrapFieldError(err, field.NewPath("convert"))
279 }
280 default:
281 // Should never happen
282 return field.Invalid(field.NewPath("type"), t.Type, "unknown transform type")
283 }
284
285 return nil
286}
287
288// ValidateMathTransform validates a MathTransform.
289func ValidateMathTransform(m *v1beta1.MathTransform) *field.Error {

Callers 2

ValidatePatchFunction · 0.85
TestValidateTransformFunction · 0.85

Calls 6

WrapFieldErrorFunction · 0.85
ValidateMathTransformFunction · 0.85
ValidateMapTransformFunction · 0.85
ValidateMatchTransformFunction · 0.85
ValidateStringTransformFunction · 0.85
ValidateConvertTransformFunction · 0.85

Tested by 1

TestValidateTransformFunction · 0.68