mbox series

[v2,0/2] t6300: clear warning when running without gpg

Message ID cover.1629263759.git.congdanhqx@gmail.com (mailing list archive)
Headers show
Series t6300: clear warning when running without gpg | expand

Message

Đoàn Trần Công Danh Aug. 18, 2021, 5:19 a.m. UTC
Running t6300 in an environment without gpg(1),
we'll see those warnings:

	fatal: Not a valid object name refs/tags/signed-empty
	fatal: Not a valid object name refs/tags/signed-short
	fatal: Not a valid object name refs/tags/signed-long

Because, those objects will be created only when GPG is satistified.
This series try to clean those errors.

Change from v1:
* Make 1/2 as near pure-code-move; and
* Use 2/2 as a code change to preserve status code for cat-file
* Mention reasons that 1/2 couldn't be pure-code-move.

Đoàn Trần Công Danh (2):
  t6300: don't run cat-file on non-existent object
  t6300: check for cat-file exit status code

 t/t6300-for-each-ref.sh | 29 ++++++++++++++++++-----------
 1 file changed, 18 insertions(+), 11 deletions(-)

Range-diff against v1:
1:  6d36f3a8df ! 1:  b813d6f2ad t6300: don't run cat-file on non-existent object
    @@ Commit message
         * skip their execution if prerequisites aren't satistified.
         * check their exit status code
     
    +    The expected value for objects with type: commit needs to be
    +    computed outside the test because we can't relies on "$3" there.
    +    Furthermore, to prevent the accidental usage of that computed
    +    expected value, BUG out on unknown object's type.
    +
         Signed-off-by: Đoàn Trần Công Danh <congdanhqx@gmail.com>
     
      ## t/t6300-for-each-ref.sh ##
    @@ t/t6300-for-each-ref.sh: test_atom() {
     -		esac
     -		# Leave $expect unquoted to lose possible leading whitespaces
     -		echo $expect >expected
    ++		# for commit leg, $3 is changed there
     +		expect=$(printf '%s' "$3" | wc -c)
      		test_expect_${4:-success} $PREREQ "basic atom: $1 contents:size" '
     +			type=$(git cat-file -t "$ref") &&
     +			case $type in
     +			tag)
     +				# We cannot use $3 as it expects sanitize_pgp to run
    -+				git cat-file tag $ref >out &&
    -+				expect=$(<out tail -n +6 | wc -c) ;;
    ++				expect=$(git cat-file tag $ref | tail -n +6 | wc -c) ;;
     +			tree | blob)
     +				expect="" ;;
     +			commit)
-:  ---------- > 2:  68ee769121 t6300: check for cat-file exit status code

Comments

Johannes Schindelin Aug. 18, 2021, 10:33 a.m. UTC | #1
Hi Danh,

On Wed, 18 Aug 2021, Đoàn Trần Công Danh wrote:

>
> Running t6300 in an environment without gpg(1),
> we'll see those warnings:
>
> 	fatal: Not a valid object name refs/tags/signed-empty
> 	fatal: Not a valid object name refs/tags/signed-short
> 	fatal: Not a valid object name refs/tags/signed-long
>
> Because, those objects will be created only when GPG is satistified.
> This series try to clean those errors.
>
> Change from v1:
> * Make 1/2 as near pure-code-move; and
> * Use 2/2 as a code change to preserve status code for cat-file
> * Mention reasons that 1/2 couldn't be pure-code-move.

Thank you for accommodating my concerns so quickly. The code was still so
present in my mind that I did not have to go back to remind myself, but it
was sufficient to look through the range-diff.

This version happily gets my `Reviewed-by:`.

Thanks,
Dscho

>
> Đoàn Trần Công Danh (2):
>   t6300: don't run cat-file on non-existent object
>   t6300: check for cat-file exit status code
>
>  t/t6300-for-each-ref.sh | 29 ++++++++++++++++++-----------
>  1 file changed, 18 insertions(+), 11 deletions(-)
>
> Range-diff against v1:
> 1:  6d36f3a8df ! 1:  b813d6f2ad t6300: don't run cat-file on non-existent object
>     @@ Commit message
>          * skip their execution if prerequisites aren't satistified.
>          * check their exit status code
>
>     +    The expected value for objects with type: commit needs to be
>     +    computed outside the test because we can't relies on "$3" there.
>     +    Furthermore, to prevent the accidental usage of that computed
>     +    expected value, BUG out on unknown object's type.
>     +
>          Signed-off-by: Đoàn Trần Công Danh <congdanhqx@gmail.com>
>
>       ## t/t6300-for-each-ref.sh ##
>     @@ t/t6300-for-each-ref.sh: test_atom() {
>      -		esac
>      -		# Leave $expect unquoted to lose possible leading whitespaces
>      -		echo $expect >expected
>     ++		# for commit leg, $3 is changed there
>      +		expect=$(printf '%s' "$3" | wc -c)
>       		test_expect_${4:-success} $PREREQ "basic atom: $1 contents:size" '
>      +			type=$(git cat-file -t "$ref") &&
>      +			case $type in
>      +			tag)
>      +				# We cannot use $3 as it expects sanitize_pgp to run
>     -+				git cat-file tag $ref >out &&
>     -+				expect=$(<out tail -n +6 | wc -c) ;;
>     ++				expect=$(git cat-file tag $ref | tail -n +6 | wc -c) ;;
>      +			tree | blob)
>      +				expect="" ;;
>      +			commit)
> -:  ---------- > 2:  68ee769121 t6300: check for cat-file exit status code
> --
> 2.33.0.rc1
>
>