All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
To: git@vger.kernel.org
Cc: "Junio C Hamano" <gitster@pobox.com>,
	"Olga Telezhnaya" <olyatelezhnaya@gmail.com>,
	"Jeff King" <peff@peff.net>, "Andrei Rybak" <rybak.a.v@gmail.com>,
	"Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
Subject: [PATCH v2 0/6] mktag tests: test more exhaustively
Date: Thu, 17 Jun 2021 12:41:56 +0200	[thread overview]
Message-ID: <cover-0.6-0000000000-20210617T104011Z-avarab@gmail.com> (raw)
In-Reply-To: <cover-0.6-00000000000-20210614T172422Z-avarab@gmail.com>

A re-roll of [1] which adds more mktag tests. Fixes the issues noted
in [2] and one more that I spotted myself: I used a "$bad_tag" in an
earlier commit than it was defined. I've fixed that, and changed the
structure of the tests (use rev-parse to assert) to make sure it is
defined before we do the "test_must_fail" tests.

1. https://lore.kernel.org/git/cover-0.6-00000000000-20210614T172422Z-avarab@gmail.com
2. https://lore.kernel.org/git/6148debe-fc44-67b7-ac9c-f27d376bc9f2@gmail.com

Ævar Arnfjörð Bjarmason (6):
  mktag tests: parse out options in helper
  mktag tests: invert --no-strict test
  mktag tests: test hash-object --literally and unreachable fsck
  mktag tests: test update-ref and reachable fsck
  mktag tests: test for-each-ref
  mktag tests: test fast-export

 t/t3800-mktag.sh | 121 +++++++++++++++++++++++++++++++++++++++++------
 1 file changed, 106 insertions(+), 15 deletions(-)

Range-diff against v1:
1:  d49549973d = 1:  d49549973d mktag tests: parse out options in helper
2:  550dcedfcb = 2:  550dcedfcb mktag tests: invert --no-strict test
3:  96520b3e89 ! 3:  bab235d752 mktag tests: test hash-object --literally and unreachable fsck
    @@ t/t3800-mktag.sh: check_verify_failure () {
      		--no-strict)
      			no_strict=yes
      			;;
    --		esac &&
     +		--fsck-obj-ok)
     +			fsck_obj_ok=yes
     +			;;
    -+		esac
    + 		esac &&
      		shift
      	done &&
    - 
     @@ t/t3800-mktag.sh: check_verify_failure () {
      			git mktag --no-strict <tag.sig
      		fi
    @@ t/t3800-mktag.sh: check_verify_failure () {
     +		then
     +			git -C bad-tag fsck
     +		else
    -+			test_must_fail git -C bad-tag fsck >out 2>err
    ++			test_must_fail git -C bad-tag fsck
     +		fi
     +	'
      }
4:  0359becdc9 ! 4:  a1d95c81ea mktag tests: test update-ref and reachable fsck
    @@ t/t3800-mktag.sh: check_verify_failure () {
      		# Reset any leftover state from the last $subject
      		rm -rf bad-tag &&
      
    + 		git init --bare bad-tag &&
    +-		git -C bad-tag hash-object -t tag -w --stdin --literally <tag.sig
    ++		bad_tag=$(git -C bad-tag hash-object -t tag -w --stdin --literally <tag.sig)
    + 	'
    + 
    + 	test_expect_success "hash-object & fsck unreachable: $subject" '
     @@ t/t3800-mktag.sh: check_verify_failure () {
    - 			test_must_fail git -C bad-tag fsck >out 2>err
    + 			test_must_fail git -C bad-tag fsck
      		fi
      	'
     +
     +	test_expect_success "update-ref & fsck reachable: $subject" '
    ++		# Make sure the earlier test created it for us
    ++		git rev-parse "$bad_tag" &&
    ++
     +		# The update-ref of the bad content will fail, do it
     +		# anyway to see if it segfaults
     +		test_might_fail git -C bad-tag update-ref "$tag_ref" "$bad_tag" &&
5:  8a626fc63a ! 5:  f4c41be92d mktag tests: test for-each-ref
    @@ Commit message
         Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
     
      ## t/t3800-mktag.sh ##
    -@@ t/t3800-mktag.sh: check_verify_failure () {
    - 		rm -rf bad-tag &&
    - 
    - 		git init --bare bad-tag &&
    --		git -C bad-tag hash-object -t tag -w --stdin --literally <tag.sig
    -+		bad_tag=$(git -C bad-tag hash-object -t tag -w --stdin --literally <tag.sig)
    - 	'
    - 
    - 	test_expect_success "hash-object & fsck unreachable: $subject" '
     @@ t/t3800-mktag.sh: check_verify_failure () {
      		# will always fail.
      		test_must_fail git -C bad-tag fsck
      	'
     +
     +	test_expect_success "for-each-ref: $subject" '
    ++		# Make sure the earlier test created it for us
    ++		git rev-parse "$bad_tag" &&
    ++
     +		echo "$bad_tag" >"bad-tag/$tag_ref" &&
     +
     +		printf "%s tag\t%s\n" "$bad_tag" "$tag_ref" >expected &&
6:  6d613d88ac ! 6:  797c8d3a87 mktag tests: test fast-export
    @@ t/t3800-mktag.sh: check_verify_failure () {
      	'
     +
     +	test_expect_success "fast-export & fast-import: $subject" '
    ++		# Make sure the earlier test created it for us
    ++		git rev-parse "$bad_tag" &&
    ++
     +		test_must_fail git -C bad-tag fast-export --all &&
    -+		test_must_fail git -C bad-tag fast-export $bad_tag
    ++		test_must_fail git -C bad-tag fast-export "$bad_tag"
     +	'
      }
      
-- 
2.32.0.571.gdba276db2c


  parent reply	other threads:[~2021-06-17 10:42 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-14 17:28 [PATCH 0/6] mktag tests: test more exhaustively Ævar Arnfjörð Bjarmason
2021-06-14 17:28 ` [PATCH 1/6] mktag tests: parse out options in helper Ævar Arnfjörð Bjarmason
2021-06-14 17:28 ` [PATCH 2/6] mktag tests: invert --no-strict test Ævar Arnfjörð Bjarmason
2021-06-14 17:28 ` [PATCH 3/6] mktag tests: test hash-object --literally and unreachable fsck Ævar Arnfjörð Bjarmason
2021-06-15 10:34   ` Andrei Rybak
2021-06-15 14:41     ` Ævar Arnfjörð Bjarmason
2021-06-14 17:28 ` [PATCH 4/6] mktag tests: test update-ref and reachable fsck Ævar Arnfjörð Bjarmason
2021-06-14 17:28 ` [PATCH 5/6] mktag tests: test for-each-ref Ævar Arnfjörð Bjarmason
2021-06-14 17:28 ` [PATCH 6/6] mktag tests: test fast-export Ævar Arnfjörð Bjarmason
2021-06-15  3:06 ` [PATCH 0/6] mktag tests: test more exhaustively Junio C Hamano
2021-06-17 10:41 ` Ævar Arnfjörð Bjarmason [this message]
2021-06-17 10:41   ` [PATCH v2 1/6] mktag tests: parse out options in helper Ævar Arnfjörð Bjarmason
2021-06-17 10:41   ` [PATCH v2 2/6] mktag tests: invert --no-strict test Ævar Arnfjörð Bjarmason
2021-06-17 10:41   ` [PATCH v2 3/6] mktag tests: test hash-object --literally and unreachable fsck Ævar Arnfjörð Bjarmason
2021-06-17 10:42   ` [PATCH v2 4/6] mktag tests: test update-ref and reachable fsck Ævar Arnfjörð Bjarmason
2021-06-17 10:42   ` [PATCH v2 5/6] mktag tests: test for-each-ref Ævar Arnfjörð Bjarmason
2021-06-17 10:42   ` [PATCH v2 6/6] mktag tests: test fast-export Ævar Arnfjörð Bjarmason

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover-0.6-0000000000-20210617T104011Z-avarab@gmail.com \
    --to=avarab@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=olyatelezhnaya@gmail.com \
    --cc=peff@peff.net \
    --cc=rybak.a.v@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.