MCPcopy Create free account
hub / github.com/github/gh-aw / TestTriggerIRToYAMLMap

Function TestTriggerIRToYAMLMap

pkg/workflow/trigger_parser_test.go:313–378  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

311}
312
313func TestTriggerIRToYAMLMap(t *testing.T) {
314 tests := []struct {
315 name string
316 ir *TriggerIR
317 want map[string]any
318 }{
319 {
320 name: "simple event",
321 ir: &TriggerIR{
322 Event: "push",
323 },
324 want: map[string]any{
325 "push": map[string]any{}, // Empty map instead of nil to avoid null in YAML
326 },
327 },
328 {
329 name: "event with types",
330 ir: &TriggerIR{
331 Event: "issues",
332 Types: []string{"opened", "edited"},
333 },
334 want: map[string]any{
335 "issues": map[string]any{
336 "types": []string{"opened", "edited"},
337 },
338 },
339 },
340 {
341 name: "event with filters",
342 ir: &TriggerIR{
343 Event: "push",
344 Filters: map[string]any{
345 "branches": []string{"main"},
346 },
347 },
348 want: map[string]any{
349 "push": map[string]any{
350 "branches": []string{"main"},
351 },
352 },
353 },
354 {
355 name: "event with additional events",
356 ir: &TriggerIR{
357 Event: "push",
358 AdditionalEvents: map[string]any{
359 "workflow_dispatch": nil,
360 },
361 },
362 want: map[string]any{
363 "push": map[string]any{}, // Empty map instead of nil
364 "workflow_dispatch": nil,
365 },
366 },
367 }
368
369 for _, tt := range tests {
370 t.Run(tt.name, func(t *testing.T) {

Callers

nothing calls this directly

Calls 4

ToYAMLMapMethod · 0.80
mapsEqualFunction · 0.70
RunMethod · 0.45
ErrorfMethod · 0.45

Tested by

no test coverage detected