[PATCH] util: add doctest to datestr()

Adrian Buehlmann adrian at cadifra.com
Fri Apr 8 11:58:16 EDT 2016


On 2016-04-08 16:51, Yuya Nishihara wrote:
> On Fri, 08 Apr 2016 11:29:20 +0200, Adrian Buehlmann wrote:
>> # HG changeset patch
>> # User Adrian Buehlmann <adrian at cadifra.com>
>> # Date 1460042647 -7200
>> # Node ID e4855d9b93ae1c1413b3ab67e9e605b968c89fa9
>> # Parent  ea86cdcd9b50bf38c6b9dd7bbaa04b9c8cc0aefb
>> util: add doctest to datestr()
>>
>> The setlocale call is needed. If I leave it away, the active locale is -
>> surprisingly - *not* 'C' here.
>>
>> diff --git a/mercurial/util.py b/mercurial/util.py
>> --- a/mercurial/util.py
>> +++ b/mercurial/util.py
>> @@ -1576,7 +1576,22 @@
>>      """represent a (unixtime, offset) tuple as a localized time.
>>      unixtime is seconds since the epoch, and offset is the time zone's
>>      number of seconds away from UTC. if timezone is false, do not
>> -    append time zone to string."""
>> +    append time zone to string.
>> +
>> +    >>> import locale
>> +    >>> locale.setlocale(locale.LC_ALL, 'C')
>> +    'C'
> 
> Perhaps test-doctest.py should do that globally? I got test failure on
> Windows even without this patch.
>

?

I'll probably stop digging this. In my experiments, setlocale in
test-doctest.py had no influence on the locale used inside the scope of
individual doctests.

Test passed here.

>> +    >>> datestr((0, False))
> 
> "offset" is integer, not bool.
> 

... which apparently doesn't match the spec of the function ("if
timezone is false, do not append time zone to string.")

Im dropping this patch anyway, as the patch by Florent now made its way.

Thanks for looking.


More information about the Mercurial-devel mailing list