> Nicely described. Thanks! > "git help cli"; dashed options first and then other arguments. Applied. > Hmph, is the above a roundabout way to say > git -C explicit-hash-$hash rev-parse one >in && Applied. > or am I missing some subtlety? No, I don't think you are. However, I would like to point out that the code which I used as the inspiration also does thing the same way: test_expect_success 'pack-object <stdin parsing: [|--revs] with --stdin' ' cat >in <<-EOF && $(git -C pack-object-stdin rev-parse one) $(git -C pack-object-stdin rev-parse two) EOF > When this test fails (e.g., the number of lines in the show-index > output is not 1), explicit-hash-$hash is not removed, because &&- > chain short-circuits. > > Perhaps join thw two into one and use test_when_finished, like this? > > test_expect_success 'show-index with explicit --object-format=$hash outside repo' ' > test_when_finished "rm -fr explicit-hash-$hash" && > git init --object-format=$hash explicit-hash-$hash && > ... > nongit git show-index --object-format=$hash <"$idx" >actual && > test_line_count 1 actual > ' That makes sense, applied. Abhijeet Sonar (2): show-index: fix uninitialized hash function t5300: add test for 'show-index --object-format' builtin/show-index.c | 9 +++++++++ t/t5300-pack-object.sh | 18 ++++++++++++++++++ 2 files changed, 27 insertions(+) Range-diff against v5: 1: 05ee1e2ea5 = 1: 05ee1e2ea5 show-index: fix uninitialized hash function 2: c8a28aae55 ! 2: 778f3ca18e t5300: add test for 'show-index --object-format' @@ t/t5300-pack-object.sh: test_expect_success SHA1 'show-index works OK outside a +for hash in sha1 sha256 +do -+ test_expect_success 'setup: show-index works OK outside a repository with hash algo passed in via --object-format' ' -+ git init explicit-hash-$hash --object-format=$hash && -+ test_commit -C explicit-hash-$hash one && -+ -+ cat >in <<-EOF && -+ $(git -C explicit-hash-$hash rev-parse one) -+ EOF -+ -+ git -C explicit-hash-$hash pack-objects explicit-hash-$hash <in -+ ' -+ + test_expect_success 'show-index works OK outside a repository with hash algo passed in via --object-format' ' ++ test_when_finished "rm -rf explicit-hash-$hash" && ++ git init --object-format=$hash explicit-hash-$hash && ++ test_commit -C explicit-hash-$hash one && ++ git -C explicit-hash-$hash rev-parse one >in && ++ git -C explicit-hash-$hash pack-objects explicit-hash-$hash <in && + idx=$(echo explicit-hash-$hash/explicit-hash-$hash*.idx) && + nongit git show-index --object-format=$hash <"$idx" >actual && -+ test_line_count = 1 actual && -+ -+ rm -rf explicit-hash-$hash ++ test_line_count = 1 actual + ' +done + -- 2.47.0.107.g34b6ce9b30