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

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

 



On Wed, Aug 11, 2010 at 05:28, Jonathan Nieder <jrnieder@xxxxxxxxx> wrote:
> Æ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?

Nope, thanks. Using >&5 works.

>> @@ -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?

No, should be return 0/1. Changed that in my working branch.

I'm going to drop this for a while until my pending patches to test
stuff get into pu. But initial experiments with using >&5 everywhere
for test progress are promising:

    http://github.com/avar/git/tree/test-intra-progress-using-tap-subtests-v2
--
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]