Re: [PATCH 04/10] test-lib: Replace uses of $(expr ...) by POSIX shell features.
- From
Johannes Sixt <j.sixt@viscovery.net>
- Date
- Mar 19, 2009, 07:38 UTC
- Message-ID
- <49C1F673.9050500@viscovery.net>
- In-Reply-To
- <alpine.DEB.1.00.0903182319180.10279@pacific.mpi-cbg.de>
Johannes Schindelin schrieb:
Show 13 quoted lines
> Hi,
>
> On Wed, 18 Mar 2009, Johannes Sixt wrote:
>
>> In particular:
>>
>> - Test case counting can be achieved by arithmetic expansion.
>>
>> - The name of the test, e.g. t1234, can be computed with ${0%%} and ${0##}.
>>
>> Signed-off-by: Johannes Sixt <j6t@kdbg.org>
>
> I guess this makes the tests less slow on Windows? Do you have numbers?Actually, while reading through test-lib.sh I found those expr expressions quite difficult to understand, and my primary intent was to make the code more readable. Furthermore, as you can see in the hunk that touches test_known_broken_{ok,failure}_ that the $(( )) construct is already in use, so it's also a change to improve consistency.
The shorter runtime (primarily on Windows) is just a nice side effect, although the gain probably vanishes in the noise.
> FWIW I run the tests on Windows with -j10 these days, and they take about > 15 minutes on a quad core 3GHz machine (which I may use from time to time; > the machine is not mine, otherwise it would run Linux).
Last time I tried -j<something> it bailed out early. I didn't try again since then. Sequential tests finish in 30-40 minutes here, but I don't run SVN tests.
-- Hannes