Skip to content

Commit aafd6e4

Browse files
committed
update asserts to new pattern
1 parent 176b0c5 commit aafd6e4

File tree

2 files changed

+14
-58
lines changed

2 files changed

+14
-58
lines changed

preview_test.go

Lines changed: 8 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -298,50 +298,14 @@ func Test_Extract(t *testing.T) {
298298
"valid_parameter_name": ap().
299299
optVals("valid_option_value"),
300300
},
301-
presetsFuncs: func(t *testing.T, presets []types.Preset) {
302-
presetMap := map[string]func(t *testing.T, preset types.Preset){
303-
"empty_parameters": func(t *testing.T, preset types.Preset) {
304-
require.Len(t, preset.Diagnostics, 0)
305-
},
306-
"no_parameters": func(t *testing.T, preset types.Preset) {
307-
require.Len(t, preset.Diagnostics, 0)
308-
},
309-
"invalid_parameter_name": func(t *testing.T, preset types.Preset) {
310-
require.Len(t, preset.Diagnostics, 1)
311-
require.Equal(t, preset.Diagnostics[0].Summary, "Undefined Parameter")
312-
require.Equal(t, preset.Diagnostics[0].Detail, "Preset parameter \"invalid_parameter_name\" is not defined by the template.")
313-
},
314-
"invalid_parameter_value": func(t *testing.T, preset types.Preset) {
315-
require.Len(t, preset.Diagnostics, 1)
316-
require.Equal(t, preset.Diagnostics[0].Summary, "Value must be a valid option")
317-
require.Equal(t, preset.Diagnostics[0].Detail, "the value \"invalid_value\" must be defined as one of options")
318-
},
319-
"valid_preset": func(t *testing.T, preset types.Preset) {
320-
require.Len(t, preset.Diagnostics, 0)
321-
require.Equal(t, preset.Parameters, map[string]string{
322-
"valid_parameter_name": "valid_option_value",
323-
})
324-
},
325-
}
326-
327-
for _, preset := range presets {
328-
if fn, ok := presetMap[preset.Name]; ok {
329-
fn(t, preset)
330-
}
331-
}
332-
333-
var defaultPresetsWithError int
334-
for _, preset := range presets {
335-
if preset.Name == "default_preset" || preset.Name == "another_default_preset" {
336-
for _, diag := range preset.Diagnostics {
337-
if diag.Summary == "Multiple default presets" {
338-
defaultPresetsWithError++
339-
break
340-
}
341-
}
342-
}
343-
}
344-
require.Equal(t, 1, defaultPresetsWithError, "exactly one default preset should have the multiple defaults error")
301+
presets: map[string]assertPreset{
302+
"empty_parameters": aPre(),
303+
"no_parameters": aPre(),
304+
"invalid_parameter_name": aPreWithDiags().errorDiagnostics("Preset parameter \"invalid_parameter_name\" is not defined by the template."),
305+
"invalid_parameter_value": aPreWithDiags().errorDiagnostics("the value \"invalid_value\" must be defined as one of options"),
306+
"valid_preset": aPre().value("valid_parameter_name", "valid_option_value"),
307+
"another_default_preset": aPre().def(true),
308+
"default_preset": aPreWithDiags().errorDiagnostics("Only one preset can be marked as default. \"another_default_preset\" is already marked as default"),
345309
},
346310
},
347311
{
@@ -709,17 +673,8 @@ func Test_Extract(t *testing.T) {
709673
check(t, param)
710674
}
711675

712-
// Assert presets
713-
if tc.presetsFuncs != nil {
714-
tc.presetsFuncs(t, output.Presets)
715-
}
716-
717676
for _, preset := range output.Presets {
718677
check, ok := tc.presets[preset.Name]
719-
if !ok && tc.presetsFuncs != nil {
720-
// TODO: Convert presetsFunc to presets
721-
continue
722-
}
723678
require.True(t, ok, "unknown preset %s", preset.Name)
724679
check(t, preset)
725680
}

testdata/invalidpresets/main.tf

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -46,18 +46,19 @@ data "coder_workspace_preset" "valid_preset" {
4646
}
4747
}
4848

49-
data "coder_workspace_preset" "default_preset" {
50-
name = "default_preset"
49+
data "coder_workspace_preset" "another_default_preset" {
50+
name = "another_default_preset"
5151
parameters = {
5252
"valid_parameter_name" = "valid_option_value"
5353
}
5454
default = true
5555
}
5656

57-
data "coder_workspace_preset" "another_default_preset" {
58-
name = "another_default_preset"
57+
data "coder_workspace_preset" "default_preset" {
58+
name = "default_preset"
5959
parameters = {
6060
"valid_parameter_name" = "valid_option_value"
6161
}
6262
default = true
63-
}
63+
}
64+

0 commit comments

Comments
 (0)