OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "ui/base/l10n/time_format.h" | 5 #include "ui/base/l10n/time_format.h" |
6 | 6 |
7 #include "base/files/file_path.h" | 7 #include "base/files/file_path.h" |
8 #include "base/strings/string16.h" | 8 #include "base/strings/string16.h" |
9 #include "base/strings/utf_string_conversions.h" | 9 #include "base/strings/utf_string_conversions.h" |
10 #include "base/time/time.h" | 10 #include "base/time/time.h" |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
67 delta_1d_(TimeDelta::FromDays(1)), | 67 delta_1d_(TimeDelta::FromDays(1)), |
68 delta_1d2h_(delta_1d_ + delta_2h_), | 68 delta_1d2h_(delta_1d_ + delta_2h_), |
69 delta_1d11h59m59s999ms_(delta_1d_ + delta_11h_ + delta_59m_ + delta_29s_ + | 69 delta_1d11h59m59s999ms_(delta_1d_ + delta_11h_ + delta_59m_ + delta_29s_ + |
70 delta_999ms_), | 70 delta_999ms_), |
71 delta_1d12h_(delta_1d_ + delta_12h_), | 71 delta_1d12h_(delta_1d_ + delta_12h_), |
72 delta_2d_(TimeDelta::FromDays(2)), | 72 delta_2d_(TimeDelta::FromDays(2)), |
73 delta_2d1h_(delta_2d_ + delta_1h_) | 73 delta_2d1h_(delta_2d_ + delta_1h_) |
74 {} | 74 {} |
75 | 75 |
76 protected: | 76 protected: |
| 77 static void SetUpTestCase() { |
| 78 LoadLocale(ui::ResourceBundle::GetSharedInstance() |
| 79 .GetLocaleFilePath("en-US", true)); |
| 80 } |
| 81 |
| 82 static void TearDownTestCase() { |
| 83 LoadLocale(base::FilePath()); |
| 84 } |
| 85 |
77 void TestStrings() { | 86 void TestStrings() { |
78 // Test English strings (simple, singular). | 87 // Test English strings (simple, singular). |
79 EXPECT_EQ(ASCIIToUTF16("1 sec"), TimeFormat::Simple( | 88 EXPECT_EQ(ASCIIToUTF16("1 sec"), TimeFormat::Simple( |
80 TimeFormat::FORMAT_DURATION, TimeFormat::LENGTH_SHORT, delta_1s_)); | 89 TimeFormat::FORMAT_DURATION, TimeFormat::LENGTH_SHORT, delta_1s_)); |
81 EXPECT_EQ(ASCIIToUTF16("1 min"), TimeFormat::Simple( | 90 EXPECT_EQ(ASCIIToUTF16("1 min"), TimeFormat::Simple( |
82 TimeFormat::FORMAT_DURATION, TimeFormat::LENGTH_SHORT, delta_1m_)); | 91 TimeFormat::FORMAT_DURATION, TimeFormat::LENGTH_SHORT, delta_1m_)); |
83 EXPECT_EQ(ASCIIToUTF16("1 hour"), TimeFormat::Simple( | 92 EXPECT_EQ(ASCIIToUTF16("1 hour"), TimeFormat::Simple( |
84 TimeFormat::FORMAT_DURATION, TimeFormat::LENGTH_SHORT, delta_1h_)); | 93 TimeFormat::FORMAT_DURATION, TimeFormat::LENGTH_SHORT, delta_1h_)); |
85 EXPECT_EQ(ASCIIToUTF16("1 day"), TimeFormat::Simple( | 94 EXPECT_EQ(ASCIIToUTF16("1 day"), TimeFormat::Simple( |
86 TimeFormat::FORMAT_DURATION, TimeFormat::LENGTH_SHORT, delta_1d_)); | 95 TimeFormat::FORMAT_DURATION, TimeFormat::LENGTH_SHORT, delta_1d_)); |
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
213 TimeDelta delta_23h29m59s999ms_; | 222 TimeDelta delta_23h29m59s999ms_; |
214 TimeDelta delta_23h30m_; | 223 TimeDelta delta_23h30m_; |
215 TimeDelta delta_23h59m29s999ms_; | 224 TimeDelta delta_23h59m29s999ms_; |
216 TimeDelta delta_23h59m30s_; | 225 TimeDelta delta_23h59m30s_; |
217 TimeDelta delta_1d_; | 226 TimeDelta delta_1d_; |
218 TimeDelta delta_1d2h_; | 227 TimeDelta delta_1d2h_; |
219 TimeDelta delta_1d11h59m59s999ms_; | 228 TimeDelta delta_1d11h59m59s999ms_; |
220 TimeDelta delta_1d12h_; | 229 TimeDelta delta_1d12h_; |
221 TimeDelta delta_2d_; | 230 TimeDelta delta_2d_; |
222 TimeDelta delta_2d1h_; | 231 TimeDelta delta_2d1h_; |
| 232 |
| 233 private: |
| 234 static void LoadLocale(const base::FilePath& file_path) { |
| 235 ui::ResourceBundle::GetSharedInstance().OverrideLocalePakForTest(file_path); |
| 236 ui::ResourceBundle::GetSharedInstance().ReloadLocaleResources("en-US"); |
| 237 } |
223 }; | 238 }; |
224 | 239 |
225 TEST_F(TimeFormatTest, SimpleAndDetailedRounding) { | 240 TEST_F(TimeFormatTest, SimpleAndDetailedRounding) { |
226 // Test rounding behavior (simple). | 241 // Test rounding behavior (simple). |
227 EXPECT_EQ(ASCIIToUTF16("0 secs"), TimeFormat::Simple( | 242 EXPECT_EQ(ASCIIToUTF16("0 secs"), TimeFormat::Simple( |
228 TimeFormat::FORMAT_DURATION, TimeFormat::LENGTH_SHORT, delta_0s_)); | 243 TimeFormat::FORMAT_DURATION, TimeFormat::LENGTH_SHORT, delta_0s_)); |
229 EXPECT_EQ(ASCIIToUTF16("0 secs"), TimeFormat::Simple( | 244 EXPECT_EQ(ASCIIToUTF16("0 secs"), TimeFormat::Simple( |
230 TimeFormat::FORMAT_DURATION, TimeFormat::LENGTH_SHORT, delta_499ms_)); | 245 TimeFormat::FORMAT_DURATION, TimeFormat::LENGTH_SHORT, delta_499ms_)); |
231 EXPECT_EQ(ASCIIToUTF16("1 sec"), TimeFormat::Simple( | 246 EXPECT_EQ(ASCIIToUTF16("1 sec"), TimeFormat::Simple( |
232 TimeFormat::FORMAT_DURATION, TimeFormat::LENGTH_SHORT, delta_500ms_)); | 247 TimeFormat::FORMAT_DURATION, TimeFormat::LENGTH_SHORT, delta_500ms_)); |
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
344 TimeFormat::RelativeDate(two_days_ago, NULL); | 359 TimeFormat::RelativeDate(two_days_ago, NULL); |
345 EXPECT_TRUE(two_days_ago_str.empty()); | 360 EXPECT_TRUE(two_days_ago_str.empty()); |
346 | 361 |
347 base::Time a_week_ago = now - TimeDelta::FromDays(7); | 362 base::Time a_week_ago = now - TimeDelta::FromDays(7); |
348 base::string16 a_week_ago_str = TimeFormat::RelativeDate(a_week_ago, NULL); | 363 base::string16 a_week_ago_str = TimeFormat::RelativeDate(a_week_ago, NULL); |
349 EXPECT_TRUE(a_week_ago_str.empty()); | 364 EXPECT_TRUE(a_week_ago_str.empty()); |
350 } | 365 } |
351 | 366 |
352 } // namespace | 367 } // namespace |
353 } // namespace ui | 368 } // namespace ui |
OLD | NEW |