| 2228 | } |
| 2229 | |
| 2230 | func TestRunWhenChanged(t *testing.T) { |
| 2231 | t.Parallel() |
| 2232 | |
| 2233 | const dir = "testdata/run_when_changed" |
| 2234 | |
| 2235 | var buff bytes.Buffer |
| 2236 | e := task.NewExecutor( |
| 2237 | task.WithDir(dir), |
| 2238 | task.WithStdout(&buff), |
| 2239 | task.WithStderr(&buff), |
| 2240 | task.WithForceAll(true), |
| 2241 | task.WithSilent(true), |
| 2242 | ) |
| 2243 | require.NoError(t, e.Setup()) |
| 2244 | require.NoError(t, e.Run(t.Context(), &task.Call{Task: "start"})) |
| 2245 | expectedOutputOrder := strings.TrimSpace(` |
| 2246 | login server=fubar user=fubar |
| 2247 | login server=foo user=foo |
| 2248 | login server=bar user=bar |
| 2249 | `) |
| 2250 | assert.Contains(t, buff.String(), expectedOutputOrder) |
| 2251 | } |
| 2252 | |
| 2253 | func TestDeferredCmds(t *testing.T) { |
| 2254 | t.Parallel() |