Re: [RFC/PATCH] WIP: Report intra-test progress with TAP subtests

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

 



Ævar Arnfjörð Bjarmason wrote:

> Here's an attempt at that, I've convented test_commit, test_merge and
> test_cmp to report intra-test progress. The only problem is that it
> doesn't quite work.

I forgot to say: thanks for the demonstration.  This is neat stuff.

> 	eval >&3 2>&4 "$1"
> 
> So when you run it you'll just get:
> 
>     $ ./t0100-previous.sh
>         1..1
>     ok 1 - branch -d @{-1}
>     ok 2 - branch -d @{-12} when there is not enough switches yet
>         1..2
>     ok 3 - merge @{-1}
>     ok 4 - merge @{-1} when there is not enough switches yet
>     # passed all 4 test(s)
>     1..4
> 
> Is there some filedescriptor saving/redirection magic I can do within
> the subtest code to print things to the *real* stdout and stderr

Descriptor 5 is a pass-through for stdout: see v0.99.5~24^2~4
(Trapping exit in tests, 2005-08-10).

Do you need a pass-through for stderr, too, or was that theoretical?

> @@ -290,20 +295,38 @@ test_tick () {
>  
>  test_commit () {
>  	file=${2:-"$1.t"}
> -	echo "${3-$1}" > "$file" &&
> -	git add "$file" &&
> -	test_tick &&
> -	git commit -m "$1" &&
> -	git tag "$1"
> +	subtest_count=$(($subtest_count + 1))
> +
> +	if echo "${3-$1}" > "$file" &&
> +		git add "$file" &&
> +		test_tick &&
> +		git commit -m "$1" &&
> +		git tag "$1"
> +	then
> +		test_ok_ "test_commit file:<$file> message:<$1> contents<${3-$1}>"
> +		true
> +	else
> +		test_failure_ "test_commit file:<$file> message:<$1> contents<${3-$1}>"
> +		true
> +	fi

This would make the test continue after the subtest, right?  Is that
intended?
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[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]