From 52b0e2938ecba96a3c96e557c2058a418ffa9641 Mon Sep 17 00:00:00 2001 From: Gabriel Freites Date: Wed, 15 Sep 2021 13:31:08 -0500 Subject: [PATCH] Source validation fixes (#2285) * added error case when ceOverrides is null * added test for empty source spec ceOverrides validation case * added test for empty spec --- apis/duck/v1/source_types.go | 3 +++ apis/duck/v1/source_types_test.go | 10 +++++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/apis/duck/v1/source_types.go b/apis/duck/v1/source_types.go index 00e699156..5c5c030a1 100644 --- a/apis/duck/v1/source_types.go +++ b/apis/duck/v1/source_types.go @@ -180,6 +180,9 @@ func (s *Source) Validate(ctx context.Context) *apis.FieldError { } func (s *SourceSpec) Validate(ctx context.Context) *apis.FieldError { + if s.CloudEventOverrides == nil { + return nil + } return s.CloudEventOverrides.Validate(ctx).ViaField("ceOverrides") } diff --git a/apis/duck/v1/source_types_test.go b/apis/duck/v1/source_types_test.go index 37dfb718c..8cbe38643 100644 --- a/apis/duck/v1/source_types_test.go +++ b/apis/duck/v1/source_types_test.go @@ -29,9 +29,17 @@ func TestSourceValidate(t *testing.T) { src *Source want *apis.FieldError }{{ - name: "empty source validation", + name: "nil source validation", src: nil, want: nil, + }, { + name: "nil source spec validation", + src: &Source{}, + want: nil, + }, { + name: "empty source spec validation", + src: &Source{Spec: SourceSpec{}}, + want: nil, }, { name: "empty source ceOverrides extensions validation", src: &Source{Spec: SourceSpec{