Whenever a test suite is executed, after finishing every test, after running all tests, the function test_done is called. You may find this function in test-lib.sh . This function displays the result of the test and also removes the trash created by running the test. On Wed, Mar 8, 2017 at 9:14 PM, Jon Loeliger <jdl@xxxxxxx> wrote: > So, like, Prathamesh Chavan said: >> The exit code of the upstream of a pipe is ignored thus we should avoid >> using it. By writing out the output of the git command to a file, we >> can test the exit codes of both the commands. >> >> Signed-off-by: Prathamesh <pc44800@xxxxxxxxx> >> --- >> t/t2027-worktree-list.sh | 14 +++++++------- >> 1 file changed, 7 insertions(+), 7 deletions(-) >> >> diff --git a/t/t2027-worktree-list.sh b/t/t2027-worktree-list.sh >> index 848da5f..daa7a04 100755 >> --- a/t/t2027-worktree-list.sh >> +++ b/t/t2027-worktree-list.sh >> @@ -31,7 +31,7 @@ test_expect_success '"list" all worktrees from main' ' >> test_when_finished "rm -rf here && git worktree prune" && >> git worktree add --detach here master && >> echo "$(git -C here rev-parse --show-toplevel) $(git rev-parse --short >> HEAD) (detached HEAD)" >>expect && >> - git worktree list | sed "s/ */ /g" >actual && >> + git worktree list >out && sed "s/ */ /g" <out >actual && >> test_cmp expect actual >> ' > > I confess I am not familiar with the test set up. > However, I'd ask the question do we care about the > lingering "out" and "actual" files here? Or will > they silently be cleaned up along the way later? > > Thanks, > jdl