incubator-stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Martin Sebor <se...@roguewave.com>
Subject Re: [jira] Commented: (STDCXX-900) 22.locale.time.get test fails 15 assertions
Date Tue, 15 Jul 2008 14:59:18 GMT
Travis Vitek (JIRA) wrote:
>     [ https://issues.apache.org/jira/browse/STDCXX-900?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12613504#action_12613504
] 
> 
> Travis Vitek commented on STDCXX-900:
> -------------------------------------
> 
> Well, most of these failures are destined to fail until the test is rewritten.

Are you sure you meant that the test needs to be rewritten?
(I'm trying to reconcile that with your subsequent comment
about binary compatibility).

Martin

> It is impossible to reliably parse any useful date-time information from a string that
contains only the formatted week number. The test tries to to do just this for {{%U}} and
{{%W}}. Even if we have a partially specified date (I believe we need at least the year and
day of week), we still need somewhere to store the additional data so that we can store the
value we parse, and then after the parsing is done so that we can use it to calculate something
useful. At the very least I think we'll be breaking binary compatibility.
> 
> So, for the time being, I think the right thing to do is to fix the portion of the test
that attempts to to verify {{%U}} and {{%W}} so that it expects failure. If we wish to fully
support this extension, then we should add a new test that verifies {{%U}} and {{%W}} with
the necessary format specifiers and then fix the code for 4.3 or later.
> 
>> 22.locale.time.get test fails 15 assertions
>> -------------------------------------------
>>
>>                 Key: STDCXX-900
>>                 URL: https://issues.apache.org/jira/browse/STDCXX-900
>>             Project: C++ Standard Library
>>          Issue Type: Bug
>>          Components: Tests
>>    Affects Versions: 4.2.0, 4.2.1
>>         Environment: MSVC
>>            Reporter: Farid Zaripov
>>            Assignee: Travis Vitek
>>            Priority: Minor
>>             Fix For: 4.2.2
>>
>>   Original Estimate: 6h
>>  Remaining Estimate: 6h
>>
>> The 22.locale.time.get test fails with the following assertions:
>> {noformat}
>> # ASSERTION (S7) (5 lines):
>> # TEXT: line 174. time_get<char>::get ("9", ..., "U") ate 0, expected 1, rdstate()
== eofbit, got failbit
>> # CLAUSE: lib.locale.time.get
>> # FILE: 22.locale.time.get.cpp
>> # LINE: 758
>> # ASSERTION (S7) (5 lines):
>> # TEXT: line 183. time_get<char>::get ("9", ..., "U") got { tm_mday=0 [1,31]
}, expected { tm_mday=0 [1,31], tm_year=320, tm_wday=2 Tue, tm_yday=60 }, flags = fmtflags(0),
locale (C)
>> # CLAUSE: lib.locale.time.get
>> # FILE: 22.locale.time.get.cpp
>> # LINE: 758
>> # ASSERTION (S7) (5 lines):
>> # TEXT: line 174. time_get<char>::get ("0", ..., "W") ate 0, expected 1, rdstate()
== eofbit, got failbit
>> # CLAUSE: lib.locale.time.get
>> # FILE: 22.locale.time.get.cpp
>> # LINE: 778
>> # ASSERTION (S7) (5 lines):
>> # TEXT: line 174. time_get<char>::get ("2nd weekday, 21st week, 2nd year",
..., "%Ex") ate 17, expected 32, rdstate() == goodbit, got failbit
>> # CLAUSE: lib.locale.time.get
>> # FILE: 22.locale.time.get.cpp
>> # LINE: 1442
>> # ASSERTION (S7) (5 lines):
>> # TEXT: line 183. time_get<char>::get ("2nd weekday, 21st week, 2nd year",
..., "%Ex") got { tm_mday=0 [1,31] }, expected Tue May 21 00:00:00 3902, flags = fmtflags(0),
locale (LC_COLLATE=C;LC_CTYPE=C;LC_MONETARY=C;LC_NUMERIC=C;LC_TIME=test-locale;LC_COLLATE=C)
>> # CLAUSE: lib.locale.time.get
>> # FILE: 22.locale.time.get.cpp
>> # LINE: 1442
>> # ASSERTION (S7) (5 lines):
>> # TEXT: line 174. time_get<char>::get ("1st", ..., "%OW") ate 3, expected 3,
rdstate() == goodbit, got failbit
>> # CLAUSE: lib.locale.time.get
>> # FILE: 22.locale.time.get.cpp
>> # LINE: 1582
>> # ASSERTION (S7) (5 lines):
>> # TEXT: line 183. time_get<char>::get ("1st", ..., "%OW") got { tm_mday=0 [1,31]
}, expected { tm_mday=0 [1,31], tm_wday=1 Mon }, flags = fmtflags(0), locale (LC_COLLATE=C;LC_CTYPE=C;LC_MONETARY=C;LC_NUMERIC=C;LC_TIME=test-locale;LC_COLLATE=C)
>> # CLAUSE: lib.locale.time.get
>> # FILE: 22.locale.time.get.cpp
>> # LINE: 1582
>> # ASSERTION (S7) (5 lines):
>> # TEXT: line 174. time_get<wchar_t>::get (L"9", ..., "U") ate 0, expected 1,
rdstate() == eofbit, got failbit
>> # CLAUSE: lib.locale.time.get
>> # FILE: 22.locale.time.get.cpp
>> # LINE: 758
>> # ASSERTION (S7) (5 lines):
>> # TEXT: line 183. time_get<wchar_t>::get (L"9", ..., "U") got { tm_mday=0 [1,31]
}, expected { tm_mday=0 [1,31], tm_year=320, tm_wday=2 Tue, tm_yday=60 }, flags = fmtflags(0),
locale (C)
>> # CLAUSE: lib.locale.time.get
>> # FILE: 22.locale.time.get.cpp
>> # LINE: 758
>> # ASSERTION (S7) (5 lines):
>> # TEXT: line 174. time_get<wchar_t>::get (L"0", ..., "W") ate 0, expected 1,
rdstate() == eofbit, got failbit
>> # CLAUSE: lib.locale.time.get
>> # FILE: 22.locale.time.get.cpp
>> # LINE: 778
>> # ASSERTION (S7) (5 lines):
>> # TEXT: line 174. time_get<wchar_t>::get (L"2nd weekday, 21st week, 2nd year",
..., "%Ex") ate 17, expected 32, rdstate() == goodbit, got failbit
>> # CLAUSE: lib.locale.time.get
>> # FILE: 22.locale.time.get.cpp
>> # LINE: 1442
>> # ASSERTION (S7) (5 lines):
>> # TEXT: line 183. time_get<wchar_t>::get (L"2nd weekday, 21st week, 2nd year",
..., "%Ex") got { tm_mday=0 [1,31] }, expected Tue May 21 00:00:00 3902, flags = fmtflags(0),
locale (LC_COLLATE=C;LC_CTYPE=C;LC_MONETARY=C;LC_NUMERIC=C;LC_TIME=test-locale;LC_COLLATE=C)
>> # CLAUSE: lib.locale.time.get
>> # FILE: 22.locale.time.get.cpp
>> # LINE: 1442
>> # ASSERTION (S7) (5 lines):
>> # TEXT: line 174. time_get<wchar_t>::get (L"1st", ..., "%OW") ate 3, expected
3, rdstate() == goodbit, got failbit
>> # CLAUSE: lib.locale.time.get
>> # FILE: 22.locale.time.get.cpp
>> # LINE: 1582
>> # ASSERTION (S7) (5 lines):
>> # TEXT: line 183. time_get<wchar_t>::get (L"1st", ..., "%OW") got { tm_mday=0
[1,31] }, expected { tm_mday=0 [1,31], tm_wday=1 Mon }, flags = fmtflags(0), locale (LC_COLLATE=C;LC_CTYPE=C;LC_MONETARY=C;LC_NUMERIC=C;LC_TIME=test-locale;LC_COLLATE=C)
>> # CLAUSE: lib.locale.time.get
>> # FILE: 22.locale.time.get.cpp
>> # LINE: 1582
>> # ASSERTION (S7) (4 lines):
>> # TEXT: time_get not exercised in named locales
>> # CLAUSE: lib.locale.time.get
>> # LINE: 1664
>> {noformat}
> 


Mime
View raw message