On Thu, Jan 4, 2024 at 3:26 PM Tamino Bauknecht <dev@xxxxxx> wrote: > I'm still not entirely happy with the tests (especially the `cp` in > there) Easily enough solved; see below... > and the heredoc doesn't seem to respect the one additional > space of its indentation - I am admittedly not the best POSIX shell > developer, if anyone has an idea on how to improve it, your suggestion > is welcome. Not sure what you mean by the heredoc not "respecting one additional space of indentation". The <<- operator strips leading TABs from the body of the heredoc but leaves other leading whitespace alone. In your tests, you have one or more TABs followed by two spaces, followed by the remaining (actual) text. So, with the leading TABs stripped off by the <<- operator, you're left with the two spaces and the remaining text, which is exactly what you want. > diff --git a/t/t5514-fetch-multiple.sh b/t/t5514-fetch-multiple.sh > @@ -209,4 +218,70 @@ test_expect_success 'git fetch --multiple --jobs=0 picks a default' ' > +for fetch_all in true false > +do > + test_expect_success "git fetch --all (works with fetch.all = $fetch_all)" ' > + test_dir="test_fetch_all_$fetch_all" && > + setup_test_clone "$test_dir" && ( > + cd "$test_dir" && > + git config fetch.all $fetch_all && > + git fetch --all && > + cat >expect <<-\ EOF && > + one/main > + one/side > + origin/HEAD -> origin/main > + origin/main > + origin/side > + three/another > + three/main > + three/side > + two/another > + two/main > + two/side > + EOF > + git branch -r >actual && > + test_cmp expect actual) > + ' > +done > + > +test_expect_success 'git fetch (fetch all remotes with fetch.all = true)' ' > + setup_test_clone test9 && ( > + cd test9 && > + git config fetch.all true && > + git fetch --all && > + git branch -r >actual && > + cp ../test_fetch_all_true/expect . && > + test_cmp expect actual) > +' Ideally, this test should create the "expect" file itself, even if the "expect" file happens to exactly match the "expect" file from the preceding test. Doing so will make the test (more) self-contained, which makes it possible to run the test in isolation without having to run all tests preceding it (see the --run option in t/README).