[PATCH v6 0/2] show-index: fix uninitialized hash function

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> 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





[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux