Skip to content

Commit 9f278d4

Browse files
committed
validations: Update the test structure and remove unused conditions
1 parent 1648952 commit 9f278d4

File tree

3 files changed

+89
-67
lines changed

3 files changed

+89
-67
lines changed

pkg/validations/property/enum_test.go

Lines changed: 44 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -192,40 +192,51 @@ func TestEnum(t *testing.T) {
192192
}
193193

194194
func TestValidateEnumConfig(t *testing.T) {
195-
t.Run("nil config", func(t *testing.T) {
196-
if err := ValidateEnumConfig(nil); err != nil {
197-
t.Fatalf("ValidateEnumConfig(nil) returned error: %v", err)
198-
}
199-
})
195+
testcases := []struct {
196+
name string
197+
cfg *EnumConfig
198+
wantErr error
199+
wantAdditionPolicy AdditionPolicy
200+
}{
201+
{
202+
name: "nil config",
203+
cfg: nil,
204+
},
205+
{
206+
name: "defaults addition policy",
207+
cfg: &EnumConfig{},
208+
wantAdditionPolicy: AdditionPolicyDisallow,
209+
},
210+
{
211+
name: "allows valid addition policies",
212+
cfg: &EnumConfig{AdditionPolicy: AdditionPolicyAllow},
213+
wantAdditionPolicy: AdditionPolicyAllow,
214+
},
215+
{
216+
name: "invalid addition policy",
217+
cfg: &EnumConfig{AdditionPolicy: "invalid"},
218+
wantErr: errUnknownAdditionPolicy,
219+
},
220+
}
200221

201-
t.Run("defaults addition policy", func(t *testing.T) {
202-
cfg := &EnumConfig{}
203-
if err := ValidateEnumConfig(cfg); err != nil {
204-
t.Fatalf("unexpected error: %v", err)
205-
}
206-
if cfg.AdditionPolicy != AdditionPolicyDisallow {
207-
t.Fatalf("expected default addition policy %q, got %q", AdditionPolicyDisallow, cfg.AdditionPolicy)
208-
}
209-
})
222+
for _, tc := range testcases {
223+
tc := tc
224+
t.Run(tc.name, func(t *testing.T) {
225+
err := ValidateEnumConfig(tc.cfg)
226+
if tc.wantErr != nil {
227+
if !errors.Is(err, tc.wantErr) {
228+
t.Fatalf("expected error %v, got %v", tc.wantErr, err)
229+
}
230+
return
231+
}
210232

211-
t.Run("allows valid addition policies", func(t *testing.T) {
212-
cfg := &EnumConfig{AdditionPolicy: AdditionPolicyAllow}
213-
if err := ValidateEnumConfig(cfg); err != nil {
214-
t.Fatalf("unexpected error: %v", err)
215-
}
216-
if cfg.AdditionPolicy != AdditionPolicyAllow {
217-
t.Fatalf("expected addition policy to remain %q, got %q", AdditionPolicyAllow, cfg.AdditionPolicy)
218-
}
219-
})
233+
if err != nil {
234+
t.Fatalf("unexpected error: %v", err)
235+
}
220236

221-
t.Run("invalid addition policy", func(t *testing.T) {
222-
cfg := &EnumConfig{AdditionPolicy: "invalid"}
223-
err := ValidateEnumConfig(cfg)
224-
if err == nil {
225-
t.Fatalf("expected error, got nil")
226-
}
227-
if !errors.Is(err, errUnknownAdditionPolicy) {
228-
t.Fatalf("expected errUnknownAdditionPolicy, got %v", err)
229-
}
230-
})
237+
if tc.cfg != nil && tc.cfg.AdditionPolicy != tc.wantAdditionPolicy {
238+
t.Fatalf("expected addition policy %q, got %q", tc.wantAdditionPolicy, tc.cfg.AdditionPolicy)
239+
}
240+
})
241+
}
231242
}

pkg/validations/property/pattern.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ func (p *Pattern) Compare(a, b *apiextensionsv1.JSONSchemaProps) validations.Com
123123
err = fmt.Errorf("%w : %q -> %q", ErrPatternAdded, a.Pattern, b.Pattern)
124124
case a.Pattern != "" && b.Pattern == "" && p.RemovalPolicy != PatternRemovalPolicyAllow:
125125
err = fmt.Errorf("%w : %q -> %q", ErrPatternRemoved, a.Pattern, b.Pattern)
126-
case a.Pattern != "" && b.Pattern != "" && a.Pattern != b.Pattern:
126+
case b.Pattern != "" && a.Pattern != b.Pattern:
127127
err = fmt.Errorf("%w : %q -> %q", ErrPatternChanged, a.Pattern, b.Pattern)
128128
}
129129

pkg/validations/property/pattern_test.go

Lines changed: 44 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -92,40 +92,51 @@ func TestPattern(t *testing.T) {
9292
}
9393

9494
func TestValidatePatternConfig(t *testing.T) {
95-
t.Run("nil config", func(t *testing.T) {
96-
if err := ValidatePatternConfig(nil); err != nil {
97-
t.Fatalf("ValidatePatternConfig(nil) returned error: %v", err)
98-
}
99-
})
95+
testcases := []struct {
96+
name string
97+
cfg *PatternConfig
98+
wantErr error
99+
wantRemovalPolicy PatternRemovalPolicy
100+
}{
101+
{
102+
name: "nil config",
103+
cfg: nil,
104+
},
105+
{
106+
name: "defaults removal policy",
107+
cfg: &PatternConfig{},
108+
wantRemovalPolicy: PatternRemovalPolicyDisallow,
109+
},
110+
{
111+
name: "allows valid removal policy",
112+
cfg: &PatternConfig{RemovalPolicy: PatternRemovalPolicyAllow},
113+
wantRemovalPolicy: PatternRemovalPolicyAllow,
114+
},
115+
{
116+
name: "invalid removal policy mentions valid values",
117+
cfg: &PatternConfig{RemovalPolicy: "invalid"},
118+
wantErr: errUnknownPatternRemovalPolicy,
119+
},
120+
}
100121

101-
t.Run("defaults removal policy", func(t *testing.T) {
102-
cfg := &PatternConfig{}
103-
if err := ValidatePatternConfig(cfg); err != nil {
104-
t.Fatalf("unexpected error: %v", err)
105-
}
106-
if cfg.RemovalPolicy != PatternRemovalPolicyDisallow {
107-
t.Fatalf("expected default removal policy %q, got %q", PatternRemovalPolicyDisallow, cfg.RemovalPolicy)
108-
}
109-
})
122+
for _, tc := range testcases {
123+
tc := tc
124+
t.Run(tc.name, func(t *testing.T) {
125+
err := ValidatePatternConfig(tc.cfg)
126+
if tc.wantErr != nil {
127+
if !errors.Is(err, tc.wantErr) {
128+
t.Fatalf("expected error %v, got %v", tc.wantErr, err)
129+
}
130+
return
131+
}
110132

111-
t.Run("allows valid removal policy", func(t *testing.T) {
112-
cfg := &PatternConfig{RemovalPolicy: PatternRemovalPolicyAllow}
113-
if err := ValidatePatternConfig(cfg); err != nil {
114-
t.Fatalf("unexpected error: %v", err)
115-
}
116-
if cfg.RemovalPolicy != PatternRemovalPolicyAllow {
117-
t.Fatalf("expected removal policy to remain %q, got %q", PatternRemovalPolicyAllow, cfg.RemovalPolicy)
118-
}
119-
})
133+
if err != nil {
134+
t.Fatalf("unexpected error: %v", err)
135+
}
120136

121-
t.Run("invalid removal policy mentions valid values", func(t *testing.T) {
122-
cfg := &PatternConfig{RemovalPolicy: "invalid"}
123-
err := ValidatePatternConfig(cfg)
124-
if err == nil {
125-
t.Fatalf("expected error, got nil")
126-
}
127-
if !errors.Is(err, errUnknownPatternRemovalPolicy) {
128-
t.Fatalf("expected errUnknownPatternRemovalPolicy, got %v", err)
129-
}
130-
})
137+
if tc.cfg != nil && tc.cfg.RemovalPolicy != tc.wantRemovalPolicy {
138+
t.Fatalf("expected removal policy %q, got %q", tc.wantRemovalPolicy, tc.cfg.RemovalPolicy)
139+
}
140+
})
141+
}
131142
}

0 commit comments

Comments
 (0)