| 1645 | } |
| 1646 | |
| 1647 | func TestIncludedTaskfileVarMerging(t *testing.T) { |
| 1648 | t.Parallel() |
| 1649 | |
| 1650 | const dir = "testdata/included_taskfile_var_merging" |
| 1651 | tests := []struct { |
| 1652 | name string |
| 1653 | task string |
| 1654 | expectedOutput string |
| 1655 | }{ |
| 1656 | {"foo", "foo:pwd", "included_taskfile_var_merging/foo\n"}, |
| 1657 | {"bar", "bar:pwd", "included_taskfile_var_merging/bar\n"}, |
| 1658 | } |
| 1659 | for _, test := range tests { |
| 1660 | t.Run(test.name, func(t *testing.T) { |
| 1661 | t.Parallel() |
| 1662 | |
| 1663 | var buff bytes.Buffer |
| 1664 | e := task.NewExecutor( |
| 1665 | task.WithDir(dir), |
| 1666 | task.WithStdout(&buff), |
| 1667 | task.WithStderr(&buff), |
| 1668 | task.WithSilent(true), |
| 1669 | ) |
| 1670 | require.NoError(t, e.Setup()) |
| 1671 | |
| 1672 | err := e.Run(t.Context(), &task.Call{Task: test.task}) |
| 1673 | require.NoError(t, err) |
| 1674 | assert.Contains(t, filepath.ToSlash(buff.String()), test.expectedOutput) |
| 1675 | }) |
| 1676 | } |
| 1677 | } |
| 1678 | |
| 1679 | func TestInternalTask(t *testing.T) { |
| 1680 | t.Parallel() |