MCPcopy Create free account
hub / github.com/AdRoll/baker / testNewConfigFromTOMLRequiredFields

Function testNewConfigFromTOMLRequiredFields

config_api_test.go:125–157  ·  view source on GitHub ↗
(t *testing.T, name, toml string)

Source from the content-addressed store, hash-verified

123}
124
125func testNewConfigFromTOMLRequiredFields(t *testing.T, name, toml string) {
126 t.Run(name, func(t *testing.T) {
127 type dummyConfig struct {
128 Param1 string
129 Param2 string `required:"true"`
130 }
131 var dummyDesc = baker.OutputDesc{
132 Name: "Dummy",
133 New: func(baker.OutputParams) (baker.Output, error) { return nil, nil },
134 Config: &dummyConfig{},
135 }
136
137 components := baker.Components{
138 Inputs: []baker.InputDesc{input.ListDesc},
139 Filters: []baker.FilterDesc{filtertest.PassThroughDesc},
140 Outputs: []baker.OutputDesc{dummyDesc},
141 }
142
143 _, err := baker.NewConfigFromToml(strings.NewReader(toml), components)
144 if err == nil {
145 t.Fatal("expected an error")
146 }
147
148 var errReq baker.ErrorRequiredField
149 if !errors.As(err, &errReq) {
150 t.Fatalf("got %q, want a ErrorRequiredField", err)
151 }
152
153 if errReq.Field != "Param2" {
154 t.Errorf("got field=%q, want field=%q", errReq.Field, "Param2")
155 }
156 })
157}
158
159func TestNewConfigFromTOMLRequiredField(t *testing.T) {
160 toml := `

Callers 1

Calls 2

NewConfigFromTomlFunction · 0.92
RunMethod · 0.65

Tested by

no test coverage detected