OLD | NEW |
---|---|
(Empty) | |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 // This whole test runs as a separate browser_test because it depends on a | |
6 // static initialization inside third_party/icu (gDecimal in digitlst.cpp). | |
7 // | |
8 // That initialization depends on the current locale, and on certain locales | |
9 // will lead to wrong behavior. To make sure that the locale is set before | |
10 // icu is used, and that the "wrong" static value doesn't affect other tests, | |
11 // this test is executed on its own process. | |
12 | |
13 #include "base/string16.h" | |
14 #include "base/test/test_util.h" | |
15 #include "base/utf_string_conversions.h" | |
16 #include "chrome/common/time_format.h" | |
17 #include "chrome/test/in_process_browser_test.h" | |
18 | |
19 #if defined(OS_POSIX) | |
Paweł Hajdan Jr.
2011/06/09 08:43:22
Please handle only running on POSIX in gyp, not in
| |
20 using base::TimeDelta; | |
21 | |
22 class TimeFormatBrowserTest: public InProcessBrowserTest { | |
Paweł Hajdan Jr.
2011/06/09 08:43:22
nit: Space before ":".
| |
23 public: | |
24 TimeFormatBrowserTest(): scoped_locale_("fr_FR.utf-8") {} | |
Paweł Hajdan Jr.
2011/06/09 08:43:22
nit: Space before ":", put the ending brace } on i
| |
25 | |
26 private: | |
27 base::ScopedSetLocale scoped_locale_; | |
28 }; | |
29 | |
30 IN_PROC_BROWSER_TEST_F(TimeFormatBrowserTest, DecimalPointNotDot) { | |
31 // Some locales use a comma ',' instead of a dot '.' as the separator for | |
32 // decimal digits. The icu library wasn't handling this, leading to "1" | |
33 // being internally converted to "+1,0e00" and ultimately leading to "NaN". | |
34 // This showed up on the browser on estimated download time, for example. | |
35 // http://crbug.com/60476 | |
36 | |
37 string16 one_min = TimeFormat::TimeRemainingShort(TimeDelta::FromMinutes(1)); | |
38 EXPECT_EQ(ASCIIToUTF16("1 min"), one_min) << "fr_FR.utf-8 locale generates " | |
Paweł Hajdan Jr.
2011/06/09 08:43:22
nit: No need for the << message, EXPECT_EQ handles
| |
39 << one_min; | |
40 } | |
41 | |
42 #endif // defined(OS_POSIX) | |
OLD | NEW |