| 2450 | } |
| 2451 | |
| 2452 | func TestIncludedVarsMultiLevel(t *testing.T) { |
| 2453 | t.Parallel() |
| 2454 | |
| 2455 | const dir = "testdata/include_with_vars_multi_level" |
| 2456 | var buff bytes.Buffer |
| 2457 | e := task.NewExecutor( |
| 2458 | task.WithDir(dir), |
| 2459 | task.WithStdout(&buff), |
| 2460 | task.WithStderr(&buff), |
| 2461 | ) |
| 2462 | require.NoError(t, e.Setup()) |
| 2463 | |
| 2464 | expectedOutputOrder := strings.TrimSpace(` |
| 2465 | task: [lib:greet] echo 'Hello world' |
| 2466 | Hello world |
| 2467 | task: [foo:lib:greet] echo 'Hello foo' |
| 2468 | Hello foo |
| 2469 | task: [bar:lib:greet] echo 'Hello bar' |
| 2470 | Hello bar |
| 2471 | `) |
| 2472 | require.NoError(t, e.Run(t.Context(), &task.Call{Task: "default"})) |
| 2473 | t.Log(buff.String()) |
| 2474 | assert.Equal(t, expectedOutputOrder, strings.TrimSpace(buff.String())) |
| 2475 | } |
| 2476 | |
| 2477 | func TestErrorCode(t *testing.T) { |
| 2478 | t.Parallel() |