annotate babel/tests/dates.py @ 577:e57abed6542a trunk

fix format_date() with a datetime parameter (#282)
author fschwarz
date Mon, 30 Jul 2012 21:48:55 +0000
parents 33153e2550a8
children 5ba68e40d1d0
rev   line source
1
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
1 # -*- coding: utf-8 -*-
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
2 #
530
ca203b2af83c Update the copyright line.
jruigrok
parents: 519
diff changeset
3 # Copyright (C) 2007-2011 Edgewall Software
1
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
4 # All rights reserved.
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
5 #
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
6 # This software is licensed as described in the file COPYING, which
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
7 # you should have received as part of this distribution. The terms
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
8 # are also available at http://babel.edgewall.org/wiki/License.
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
9 #
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
10 # This software consists of voluntary contributions made by many
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
11 # individuals. For the exact contribution history, see the revision
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
12 # history and logs, available at http://babel.edgewall.org/log/.
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
13
519
045782926b0c fix expected output from !FormatTimedeltaTestCase in babel.tests.dates and ensure it will be executed during the normal test run (see #259)
fschwarz
parents: 512
diff changeset
14 from datetime import date, datetime, time, timedelta
1
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
15 import doctest
512
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
16 import new
1
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
17 import unittest
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
18
29
72bf45adb926 More work on timezones.
cmlenz
parents: 19
diff changeset
19 from pytz import timezone
72bf45adb926 More work on timezones.
cmlenz
parents: 19
diff changeset
20
1
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
21 from babel import dates
512
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
22 from babel.util import FixedOffsetTimezone
1
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
23
15
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
24
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
25 class DateTimeFormatTestCase(unittest.TestCase):
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
26
396
0058b7f41d9a Fixed quarters in date formatting.
cmlenz
parents: 395
diff changeset
27 def test_quarter_format(self):
0058b7f41d9a Fixed quarters in date formatting.
cmlenz
parents: 395
diff changeset
28 d = date(2006, 6, 8)
0058b7f41d9a Fixed quarters in date formatting.
cmlenz
parents: 395
diff changeset
29 fmt = dates.DateTimeFormat(d, locale='en_US')
0058b7f41d9a Fixed quarters in date formatting.
cmlenz
parents: 395
diff changeset
30 self.assertEqual('2', fmt['Q'])
0058b7f41d9a Fixed quarters in date formatting.
cmlenz
parents: 395
diff changeset
31 self.assertEqual('2nd quarter', fmt['QQQQ'])
0058b7f41d9a Fixed quarters in date formatting.
cmlenz
parents: 395
diff changeset
32 d = date(2006, 12, 31)
0058b7f41d9a Fixed quarters in date formatting.
cmlenz
parents: 395
diff changeset
33 fmt = dates.DateTimeFormat(d, locale='en_US')
0058b7f41d9a Fixed quarters in date formatting.
cmlenz
parents: 395
diff changeset
34 self.assertEqual('Q4', fmt['QQQ'])
0058b7f41d9a Fixed quarters in date formatting.
cmlenz
parents: 395
diff changeset
35
344
eb12741b65df Fix for incorrect month context lookup in date formatting. Closes #75. Thanks to Andrew Stromnov for reporting the problem and providing a patch.
cmlenz
parents: 274
diff changeset
36 def test_month_context(self):
eb12741b65df Fix for incorrect month context lookup in date formatting. Closes #75. Thanks to Andrew Stromnov for reporting the problem and providing a patch.
cmlenz
parents: 274
diff changeset
37 d = date(2006, 1, 8)
eb12741b65df Fix for incorrect month context lookup in date formatting. Closes #75. Thanks to Andrew Stromnov for reporting the problem and providing a patch.
cmlenz
parents: 274
diff changeset
38 fmt = dates.DateTimeFormat(d, locale='cs_CZ')
eb12741b65df Fix for incorrect month context lookup in date formatting. Closes #75. Thanks to Andrew Stromnov for reporting the problem and providing a patch.
cmlenz
parents: 274
diff changeset
39 self.assertEqual('1', fmt['MMM'])
eb12741b65df Fix for incorrect month context lookup in date formatting. Closes #75. Thanks to Andrew Stromnov for reporting the problem and providing a patch.
cmlenz
parents: 274
diff changeset
40 fmt = dates.DateTimeFormat(d, locale='cs_CZ')
eb12741b65df Fix for incorrect month context lookup in date formatting. Closes #75. Thanks to Andrew Stromnov for reporting the problem and providing a patch.
cmlenz
parents: 274
diff changeset
41 self.assertEqual('1.', fmt['LLL'])
eb12741b65df Fix for incorrect month context lookup in date formatting. Closes #75. Thanks to Andrew Stromnov for reporting the problem and providing a patch.
cmlenz
parents: 274
diff changeset
42
375
4eca63af0a12 Implement support for aliases in the CLDR data. Closes #68. Also, update to CLDR 1.6, and a much improved `dump_data` script.
cmlenz
parents: 348
diff changeset
43 def test_abbreviated_month_alias(self):
4eca63af0a12 Implement support for aliases in the CLDR data. Closes #68. Also, update to CLDR 1.6, and a much improved `dump_data` script.
cmlenz
parents: 348
diff changeset
44 d = date(2006, 3, 8)
4eca63af0a12 Implement support for aliases in the CLDR data. Closes #68. Also, update to CLDR 1.6, and a much improved `dump_data` script.
cmlenz
parents: 348
diff changeset
45 fmt = dates.DateTimeFormat(d, locale='de_DE')
4eca63af0a12 Implement support for aliases in the CLDR data. Closes #68. Also, update to CLDR 1.6, and a much improved `dump_data` script.
cmlenz
parents: 348
diff changeset
46 self.assertEqual(u'Mär', fmt['LLL'])
4eca63af0a12 Implement support for aliases in the CLDR data. Closes #68. Also, update to CLDR 1.6, and a much improved `dump_data` script.
cmlenz
parents: 348
diff changeset
47
240
3bac7137a1d7 More work on #46 (week-of-year/week-of-month).
cmlenz
parents: 239
diff changeset
48 def test_week_of_year_first(self):
239
0deb683d803b Again, properly implement week-in-year (#46).
cmlenz
parents: 238
diff changeset
49 d = date(2006, 1, 8)
0deb683d803b Again, properly implement week-in-year (#46).
cmlenz
parents: 238
diff changeset
50 fmt = dates.DateTimeFormat(d, locale='de_DE')
0deb683d803b Again, properly implement week-in-year (#46).
cmlenz
parents: 238
diff changeset
51 self.assertEqual('1', fmt['w'])
215
7fcdcdf8972d Dummy/stub implementation for week-in-year and week-in-month date format fields. Also, treat extended year the same as the regular year field, not even ICU seems to handle it specially.
cmlenz
parents: 129
diff changeset
52 fmt = dates.DateTimeFormat(d, locale='en_US')
239
0deb683d803b Again, properly implement week-in-year (#46).
cmlenz
parents: 238
diff changeset
53 self.assertEqual('02', fmt['ww'])
215
7fcdcdf8972d Dummy/stub implementation for week-in-year and week-in-month date format fields. Also, treat extended year the same as the regular year field, not even ICU seems to handle it specially.
cmlenz
parents: 129
diff changeset
54
242
910a6fe4471d Finish implementation of day-of-year and day-of-month for now, and fix implementation of year-of-week-of-year field. Closes #46. I suspect there are still cases not entirely covered by this implementation, but those can be filed as separate tickets.
cmlenz
parents: 241
diff changeset
55 def test_week_of_year_first_with_year(self):
910a6fe4471d Finish implementation of day-of-year and day-of-month for now, and fix implementation of year-of-week-of-year field. Closes #46. I suspect there are still cases not entirely covered by this implementation, but those can be filed as separate tickets.
cmlenz
parents: 241
diff changeset
56 d = date(2006, 1, 1)
910a6fe4471d Finish implementation of day-of-year and day-of-month for now, and fix implementation of year-of-week-of-year field. Closes #46. I suspect there are still cases not entirely covered by this implementation, but those can be filed as separate tickets.
cmlenz
parents: 241
diff changeset
57 fmt = dates.DateTimeFormat(d, locale='de_DE')
910a6fe4471d Finish implementation of day-of-year and day-of-month for now, and fix implementation of year-of-week-of-year field. Closes #46. I suspect there are still cases not entirely covered by this implementation, but those can be filed as separate tickets.
cmlenz
parents: 241
diff changeset
58 self.assertEqual('52', fmt['w'])
910a6fe4471d Finish implementation of day-of-year and day-of-month for now, and fix implementation of year-of-week-of-year field. Closes #46. I suspect there are still cases not entirely covered by this implementation, but those can be filed as separate tickets.
cmlenz
parents: 241
diff changeset
59 self.assertEqual('2005', fmt['YYYY'])
910a6fe4471d Finish implementation of day-of-year and day-of-month for now, and fix implementation of year-of-week-of-year field. Closes #46. I suspect there are still cases not entirely covered by this implementation, but those can be filed as separate tickets.
cmlenz
parents: 241
diff changeset
60
240
3bac7137a1d7 More work on #46 (week-of-year/week-of-month).
cmlenz
parents: 239
diff changeset
61 def test_week_of_year_last(self):
3bac7137a1d7 More work on #46 (week-of-year/week-of-month).
cmlenz
parents: 239
diff changeset
62 d = date(2005, 12, 26)
3bac7137a1d7 More work on #46 (week-of-year/week-of-month).
cmlenz
parents: 239
diff changeset
63 fmt = dates.DateTimeFormat(d, locale='de_DE')
3bac7137a1d7 More work on #46 (week-of-year/week-of-month).
cmlenz
parents: 239
diff changeset
64 self.assertEqual('52', fmt['w'])
215
7fcdcdf8972d Dummy/stub implementation for week-in-year and week-in-month date format fields. Also, treat extended year the same as the regular year field, not even ICU seems to handle it specially.
cmlenz
parents: 129
diff changeset
65 fmt = dates.DateTimeFormat(d, locale='en_US')
551
33153e2550a8 small test refactoring/cleanup
fschwarz
parents: 530
diff changeset
66 self.assertEqual('52', fmt['w'])
240
3bac7137a1d7 More work on #46 (week-of-year/week-of-month).
cmlenz
parents: 239
diff changeset
67
3bac7137a1d7 More work on #46 (week-of-year/week-of-month).
cmlenz
parents: 239
diff changeset
68 def test_week_of_month_first(self):
3bac7137a1d7 More work on #46 (week-of-year/week-of-month).
cmlenz
parents: 239
diff changeset
69 d = date(2006, 1, 8)
3bac7137a1d7 More work on #46 (week-of-year/week-of-month).
cmlenz
parents: 239
diff changeset
70 fmt = dates.DateTimeFormat(d, locale='de_DE')
215
7fcdcdf8972d Dummy/stub implementation for week-in-year and week-in-month date format fields. Also, treat extended year the same as the regular year field, not even ICU seems to handle it specially.
cmlenz
parents: 129
diff changeset
71 self.assertEqual('1', fmt['W'])
240
3bac7137a1d7 More work on #46 (week-of-year/week-of-month).
cmlenz
parents: 239
diff changeset
72 fmt = dates.DateTimeFormat(d, locale='en_US')
3bac7137a1d7 More work on #46 (week-of-year/week-of-month).
cmlenz
parents: 239
diff changeset
73 self.assertEqual('2', fmt['W'])
3bac7137a1d7 More work on #46 (week-of-year/week-of-month).
cmlenz
parents: 239
diff changeset
74
3bac7137a1d7 More work on #46 (week-of-year/week-of-month).
cmlenz
parents: 239
diff changeset
75 def test_week_of_month_last(self):
3bac7137a1d7 More work on #46 (week-of-year/week-of-month).
cmlenz
parents: 239
diff changeset
76 d = date(2006, 1, 29)
3bac7137a1d7 More work on #46 (week-of-year/week-of-month).
cmlenz
parents: 239
diff changeset
77 fmt = dates.DateTimeFormat(d, locale='de_DE')
3bac7137a1d7 More work on #46 (week-of-year/week-of-month).
cmlenz
parents: 239
diff changeset
78 self.assertEqual('4', fmt['W'])
3bac7137a1d7 More work on #46 (week-of-year/week-of-month).
cmlenz
parents: 239
diff changeset
79 fmt = dates.DateTimeFormat(d, locale='en_US')
3bac7137a1d7 More work on #46 (week-of-year/week-of-month).
cmlenz
parents: 239
diff changeset
80 self.assertEqual('5', fmt['W'])
215
7fcdcdf8972d Dummy/stub implementation for week-in-year and week-in-month date format fields. Also, treat extended year the same as the regular year field, not even ICU seems to handle it specially.
cmlenz
parents: 129
diff changeset
81
221
2af0d1085dd4 Implement day-of-year date format field. Closes #49.
cmlenz
parents: 217
diff changeset
82 def test_day_of_year(self):
2af0d1085dd4 Implement day-of-year date format field. Closes #49.
cmlenz
parents: 217
diff changeset
83 d = date(2007, 4, 1)
2af0d1085dd4 Implement day-of-year date format field. Closes #49.
cmlenz
parents: 217
diff changeset
84 fmt = dates.DateTimeFormat(d, locale='en_US')
2af0d1085dd4 Implement day-of-year date format field. Closes #49.
cmlenz
parents: 217
diff changeset
85 self.assertEqual('91', fmt['D'])
577
e57abed6542a fix format_date() with a datetime parameter (#282)
fschwarz
parents: 551
diff changeset
86
e57abed6542a fix format_date() with a datetime parameter (#282)
fschwarz
parents: 551
diff changeset
87 def test_day_of_year_works_with_datetime(self):
e57abed6542a fix format_date() with a datetime parameter (#282)
fschwarz
parents: 551
diff changeset
88 d = datetime(2007, 4, 1)
e57abed6542a fix format_date() with a datetime parameter (#282)
fschwarz
parents: 551
diff changeset
89 fmt = dates.DateTimeFormat(d, locale='en_US')
e57abed6542a fix format_date() with a datetime parameter (#282)
fschwarz
parents: 551
diff changeset
90 self.assertEqual('91', fmt['D'])
221
2af0d1085dd4 Implement day-of-year date format field. Closes #49.
cmlenz
parents: 217
diff changeset
91
2af0d1085dd4 Implement day-of-year date format field. Closes #49.
cmlenz
parents: 217
diff changeset
92 def test_day_of_year_first(self):
2af0d1085dd4 Implement day-of-year date format field. Closes #49.
cmlenz
parents: 217
diff changeset
93 d = date(2007, 1, 1)
2af0d1085dd4 Implement day-of-year date format field. Closes #49.
cmlenz
parents: 217
diff changeset
94 fmt = dates.DateTimeFormat(d, locale='en_US')
2af0d1085dd4 Implement day-of-year date format field. Closes #49.
cmlenz
parents: 217
diff changeset
95 self.assertEqual('001', fmt['DDD'])
2af0d1085dd4 Implement day-of-year date format field. Closes #49.
cmlenz
parents: 217
diff changeset
96
2af0d1085dd4 Implement day-of-year date format field. Closes #49.
cmlenz
parents: 217
diff changeset
97 def test_day_of_year_last(self):
2af0d1085dd4 Implement day-of-year date format field. Closes #49.
cmlenz
parents: 217
diff changeset
98 d = date(2007, 12, 31)
2af0d1085dd4 Implement day-of-year date format field. Closes #49.
cmlenz
parents: 217
diff changeset
99 fmt = dates.DateTimeFormat(d, locale='en_US')
2af0d1085dd4 Implement day-of-year date format field. Closes #49.
cmlenz
parents: 217
diff changeset
100 self.assertEqual('365', fmt['DDD'])
2af0d1085dd4 Implement day-of-year date format field. Closes #49.
cmlenz
parents: 217
diff changeset
101
241
15acce6db1da Implement day-of-week-in-month field in date formatting. Closes #50.
cmlenz
parents: 240
diff changeset
102 def test_day_of_week_in_month(self):
15acce6db1da Implement day-of-week-in-month field in date formatting. Closes #50.
cmlenz
parents: 240
diff changeset
103 d = date(2007, 4, 15)
15acce6db1da Implement day-of-week-in-month field in date formatting. Closes #50.
cmlenz
parents: 240
diff changeset
104 fmt = dates.DateTimeFormat(d, locale='en_US')
15acce6db1da Implement day-of-week-in-month field in date formatting. Closes #50.
cmlenz
parents: 240
diff changeset
105 self.assertEqual('3', fmt['F'])
15acce6db1da Implement day-of-week-in-month field in date formatting. Closes #50.
cmlenz
parents: 240
diff changeset
106
15acce6db1da Implement day-of-week-in-month field in date formatting. Closes #50.
cmlenz
parents: 240
diff changeset
107 def test_day_of_week_in_month_first(self):
15acce6db1da Implement day-of-week-in-month field in date formatting. Closes #50.
cmlenz
parents: 240
diff changeset
108 d = date(2007, 4, 1)
15acce6db1da Implement day-of-week-in-month field in date formatting. Closes #50.
cmlenz
parents: 240
diff changeset
109 fmt = dates.DateTimeFormat(d, locale='en_US')
15acce6db1da Implement day-of-week-in-month field in date formatting. Closes #50.
cmlenz
parents: 240
diff changeset
110 self.assertEqual('1', fmt['F'])
15acce6db1da Implement day-of-week-in-month field in date formatting. Closes #50.
cmlenz
parents: 240
diff changeset
111
15acce6db1da Implement day-of-week-in-month field in date formatting. Closes #50.
cmlenz
parents: 240
diff changeset
112 def test_day_of_week_in_month_last(self):
15acce6db1da Implement day-of-week-in-month field in date formatting. Closes #50.
cmlenz
parents: 240
diff changeset
113 d = date(2007, 4, 29)
15acce6db1da Implement day-of-week-in-month field in date formatting. Closes #50.
cmlenz
parents: 240
diff changeset
114 fmt = dates.DateTimeFormat(d, locale='en_US')
15acce6db1da Implement day-of-week-in-month field in date formatting. Closes #50.
cmlenz
parents: 240
diff changeset
115 self.assertEqual('5', fmt['F'])
15acce6db1da Implement day-of-week-in-month field in date formatting. Closes #50.
cmlenz
parents: 240
diff changeset
116
15
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
117 def test_local_day_of_week(self):
217
31ccdaa313df Implement milliseconds in day (#48).
cmlenz
parents: 216
diff changeset
118 d = date(2007, 4, 1) # a sunday
15
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
119 fmt = dates.DateTimeFormat(d, locale='de_DE')
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
120 self.assertEqual('7', fmt['e']) # monday is first day of week
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
121 fmt = dates.DateTimeFormat(d, locale='en_US')
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
122 self.assertEqual('01', fmt['ee']) # sunday is first day of week
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
123 fmt = dates.DateTimeFormat(d, locale='dv_MV')
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
124 self.assertEqual('03', fmt['ee']) # friday is first day of week
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
125
217
31ccdaa313df Implement milliseconds in day (#48).
cmlenz
parents: 216
diff changeset
126 d = date(2007, 4, 2) # a monday
15
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
127 fmt = dates.DateTimeFormat(d, locale='de_DE')
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
128 self.assertEqual('1', fmt['e']) # monday is first day of week
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
129 fmt = dates.DateTimeFormat(d, locale='en_US')
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
130 self.assertEqual('02', fmt['ee']) # sunday is first day of week
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
131 fmt = dates.DateTimeFormat(d, locale='dv_MV')
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
132 self.assertEqual('04', fmt['ee']) # friday is first day of week
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
133
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
134 def test_local_day_of_week_standalone(self):
217
31ccdaa313df Implement milliseconds in day (#48).
cmlenz
parents: 216
diff changeset
135 d = date(2007, 4, 1) # a sunday
15
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
136 fmt = dates.DateTimeFormat(d, locale='de_DE')
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
137 self.assertEqual('7', fmt['c']) # monday is first day of week
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
138 fmt = dates.DateTimeFormat(d, locale='en_US')
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
139 self.assertEqual('1', fmt['c']) # sunday is first day of week
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
140 fmt = dates.DateTimeFormat(d, locale='dv_MV')
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
141 self.assertEqual('3', fmt['c']) # friday is first day of week
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
142
217
31ccdaa313df Implement milliseconds in day (#48).
cmlenz
parents: 216
diff changeset
143 d = date(2007, 4, 2) # a monday
15
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
144 fmt = dates.DateTimeFormat(d, locale='de_DE')
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
145 self.assertEqual('1', fmt['c']) # monday is first day of week
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
146 fmt = dates.DateTimeFormat(d, locale='en_US')
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
147 self.assertEqual('2', fmt['c']) # sunday is first day of week
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
148 fmt = dates.DateTimeFormat(d, locale='dv_MV')
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
149 self.assertEqual('4', fmt['c']) # friday is first day of week
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
150
216
72813ca69416 Support for fractional seconds field in date formatting. Closes #47.
cmlenz
parents: 215
diff changeset
151 def test_fractional_seconds(self):
217
31ccdaa313df Implement milliseconds in day (#48).
cmlenz
parents: 216
diff changeset
152 t = time(15, 30, 12, 34567)
31ccdaa313df Implement milliseconds in day (#48).
cmlenz
parents: 216
diff changeset
153 fmt = dates.DateTimeFormat(t, locale='en_US')
216
72813ca69416 Support for fractional seconds field in date formatting. Closes #47.
cmlenz
parents: 215
diff changeset
154 self.assertEqual('3457', fmt['SSSS'])
72813ca69416 Support for fractional seconds field in date formatting. Closes #47.
cmlenz
parents: 215
diff changeset
155
72813ca69416 Support for fractional seconds field in date formatting. Closes #47.
cmlenz
parents: 215
diff changeset
156 def test_fractional_seconds_zero(self):
217
31ccdaa313df Implement milliseconds in day (#48).
cmlenz
parents: 216
diff changeset
157 t = time(15, 30, 0)
31ccdaa313df Implement milliseconds in day (#48).
cmlenz
parents: 216
diff changeset
158 fmt = dates.DateTimeFormat(t, locale='en_US')
31ccdaa313df Implement milliseconds in day (#48).
cmlenz
parents: 216
diff changeset
159 self.assertEqual('0000', fmt['SSSS'])
31ccdaa313df Implement milliseconds in day (#48).
cmlenz
parents: 216
diff changeset
160
31ccdaa313df Implement milliseconds in day (#48).
cmlenz
parents: 216
diff changeset
161 def test_milliseconds_in_day(self):
31ccdaa313df Implement milliseconds in day (#48).
cmlenz
parents: 216
diff changeset
162 t = time(15, 30, 12, 345000)
31ccdaa313df Implement milliseconds in day (#48).
cmlenz
parents: 216
diff changeset
163 fmt = dates.DateTimeFormat(t, locale='en_US')
31ccdaa313df Implement milliseconds in day (#48).
cmlenz
parents: 216
diff changeset
164 self.assertEqual('55812345', fmt['AAAA'])
31ccdaa313df Implement milliseconds in day (#48).
cmlenz
parents: 216
diff changeset
165
31ccdaa313df Implement milliseconds in day (#48).
cmlenz
parents: 216
diff changeset
166 def test_milliseconds_in_day_zero(self):
31ccdaa313df Implement milliseconds in day (#48).
cmlenz
parents: 216
diff changeset
167 d = time(0, 0, 0)
216
72813ca69416 Support for fractional seconds field in date formatting. Closes #47.
cmlenz
parents: 215
diff changeset
168 fmt = dates.DateTimeFormat(d, locale='en_US')
217
31ccdaa313df Implement milliseconds in day (#48).
cmlenz
parents: 216
diff changeset
169 self.assertEqual('0000', fmt['AAAA'])
216
72813ca69416 Support for fractional seconds field in date formatting. Closes #47.
cmlenz
parents: 215
diff changeset
170
29
72bf45adb926 More work on timezones.
cmlenz
parents: 19
diff changeset
171 def test_timezone_rfc822(self):
72bf45adb926 More work on timezones.
cmlenz
parents: 19
diff changeset
172 tz = timezone('Europe/Berlin')
72bf45adb926 More work on timezones.
cmlenz
parents: 19
diff changeset
173 t = time(15, 30, tzinfo=tz)
72bf45adb926 More work on timezones.
cmlenz
parents: 19
diff changeset
174 fmt = dates.DateTimeFormat(t, locale='de_DE')
72bf45adb926 More work on timezones.
cmlenz
parents: 19
diff changeset
175 self.assertEqual('+0100', fmt['Z'])
72bf45adb926 More work on timezones.
cmlenz
parents: 19
diff changeset
176
72bf45adb926 More work on timezones.
cmlenz
parents: 19
diff changeset
177 def test_timezone_gmt(self):
72bf45adb926 More work on timezones.
cmlenz
parents: 19
diff changeset
178 tz = timezone('Europe/Berlin')
72bf45adb926 More work on timezones.
cmlenz
parents: 19
diff changeset
179 t = time(15, 30, tzinfo=tz)
72bf45adb926 More work on timezones.
cmlenz
parents: 19
diff changeset
180 fmt = dates.DateTimeFormat(t, locale='de_DE')
233
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
181 self.assertEqual('GMT+01:00', fmt['ZZZZ'])
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
182
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
183 def test_timezone_no_uncommon(self):
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
184 tz = timezone('Europe/Paris')
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
185 dt = datetime(2007, 4, 1, 15, 30, tzinfo=tz)
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
186 fmt = dates.DateTimeFormat(dt, locale='fr_CA')
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
187 self.assertEqual('France', fmt['v'])
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
188
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
189 def test_timezone_with_uncommon(self):
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
190 tz = timezone('Europe/Paris')
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
191 dt = datetime(2007, 4, 1, 15, 30, tzinfo=tz)
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
192 fmt = dates.DateTimeFormat(dt, locale='fr_CA')
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
193 self.assertEqual('HEC', fmt['V'])
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
194
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
195 def test_timezone_location_format(self):
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
196 tz = timezone('Europe/Paris')
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
197 dt = datetime(2007, 4, 1, 15, 30, tzinfo=tz)
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
198 fmt = dates.DateTimeFormat(dt, locale='fr_FR')
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
199 self.assertEqual('France', fmt['VVVV'])
29
72bf45adb926 More work on timezones.
cmlenz
parents: 19
diff changeset
200
129
13d69e50fc3a Implement wall-time time-zone display.
cmlenz
parents: 29
diff changeset
201 def test_timezone_walltime_short(self):
13d69e50fc3a Implement wall-time time-zone display.
cmlenz
parents: 29
diff changeset
202 tz = timezone('Europe/Paris')
13d69e50fc3a Implement wall-time time-zone display.
cmlenz
parents: 29
diff changeset
203 t = time(15, 30, tzinfo=tz)
233
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
204 fmt = dates.DateTimeFormat(t, locale='fr_FR')
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
205 self.assertEqual('HEC', fmt['v'])
129
13d69e50fc3a Implement wall-time time-zone display.
cmlenz
parents: 29
diff changeset
206
13d69e50fc3a Implement wall-time time-zone display.
cmlenz
parents: 29
diff changeset
207 def test_timezone_walltime_long(self):
13d69e50fc3a Implement wall-time time-zone display.
cmlenz
parents: 29
diff changeset
208 tz = timezone('Europe/Paris')
13d69e50fc3a Implement wall-time time-zone display.
cmlenz
parents: 29
diff changeset
209 t = time(15, 30, tzinfo=tz)
233
da97a3138239 Upgraded to CLDR 1.5 and improved timezone formatting.
cmlenz
parents: 221
diff changeset
210 fmt = dates.DateTimeFormat(t, locale='fr_FR')
430
180064b70adf First changes to accomodate CLDR 1.7's changes.
jruigrok
parents: 396
diff changeset
211 self.assertEqual(u'Heure de l\u2019Europe centrale', fmt['vvvv'])
29
72bf45adb926 More work on timezones.
cmlenz
parents: 19
diff changeset
212
273
c42c1513c626 Fixed formatting bug with 12-hour clock patterns.
jonas
parents: 242
diff changeset
213 def test_hour_formatting(self):
c42c1513c626 Fixed formatting bug with 12-hour clock patterns.
jonas
parents: 242
diff changeset
214 l = 'en_US'
c42c1513c626 Fixed formatting bug with 12-hour clock patterns.
jonas
parents: 242
diff changeset
215 t = time(0, 0, 0)
c42c1513c626 Fixed formatting bug with 12-hour clock patterns.
jonas
parents: 242
diff changeset
216 self.assertEqual(dates.format_time(t, 'h a', locale=l), '12 AM')
c42c1513c626 Fixed formatting bug with 12-hour clock patterns.
jonas
parents: 242
diff changeset
217 self.assertEqual(dates.format_time(t, 'H', locale=l), '0')
c42c1513c626 Fixed formatting bug with 12-hour clock patterns.
jonas
parents: 242
diff changeset
218 self.assertEqual(dates.format_time(t, 'k', locale=l), '24')
c42c1513c626 Fixed formatting bug with 12-hour clock patterns.
jonas
parents: 242
diff changeset
219 self.assertEqual(dates.format_time(t, 'K a', locale=l), '0 AM')
c42c1513c626 Fixed formatting bug with 12-hour clock patterns.
jonas
parents: 242
diff changeset
220 t = time(12, 0, 0)
c42c1513c626 Fixed formatting bug with 12-hour clock patterns.
jonas
parents: 242
diff changeset
221 self.assertEqual(dates.format_time(t, 'h a', locale=l), '12 PM')
c42c1513c626 Fixed formatting bug with 12-hour clock patterns.
jonas
parents: 242
diff changeset
222 self.assertEqual(dates.format_time(t, 'H', locale=l), '12')
274
c30e94207887 Fixed a bug introduced by [301].
jonas
parents: 273
diff changeset
223 self.assertEqual(dates.format_time(t, 'k', locale=l), '12')
273
c42c1513c626 Fixed formatting bug with 12-hour clock patterns.
jonas
parents: 242
diff changeset
224 self.assertEqual(dates.format_time(t, 'K a', locale=l), '0 PM')
c42c1513c626 Fixed formatting bug with 12-hour clock patterns.
jonas
parents: 242
diff changeset
225
15
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
226
19
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
227 class FormatDateTestCase(unittest.TestCase):
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
228
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
229 def test_with_time_fields_in_pattern(self):
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
230 self.assertRaises(AttributeError, dates.format_date, date(2007, 04, 01),
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
231 "yyyy-MM-dd HH:mm", locale='en_US')
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
232
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
233 def test_with_time_fields_in_pattern_and_datetime_param(self):
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
234 self.assertRaises(AttributeError, dates.format_date,
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
235 datetime(2007, 04, 01, 15, 30),
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
236 "yyyy-MM-dd HH:mm", locale='en_US')
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
237
577
e57abed6542a fix format_date() with a datetime parameter (#282)
fschwarz
parents: 551
diff changeset
238 def test_with_day_of_year_in_pattern_and_datetime_param(self):
e57abed6542a fix format_date() with a datetime parameter (#282)
fschwarz
parents: 551
diff changeset
239 # format_date should work on datetimes just as well (see #282)
e57abed6542a fix format_date() with a datetime parameter (#282)
fschwarz
parents: 551
diff changeset
240 d = datetime(2007, 04, 01)
e57abed6542a fix format_date() with a datetime parameter (#282)
fschwarz
parents: 551
diff changeset
241 self.assertEqual('14', dates.format_date(d, 'w', locale='en_US'))
e57abed6542a fix format_date() with a datetime parameter (#282)
fschwarz
parents: 551
diff changeset
242
19
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
243
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
244 class FormatTimeTestCase(unittest.TestCase):
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
245
348
76bfb34282af Fixes for timezone calculations in time formatting (#83).
cmlenz
parents: 344
diff changeset
246 def test_with_naive_datetime_and_tzinfo(self):
76bfb34282af Fixes for timezone calculations in time formatting (#83).
cmlenz
parents: 344
diff changeset
247 string = dates.format_time(datetime(2007, 4, 1, 15, 30),
76bfb34282af Fixes for timezone calculations in time formatting (#83).
cmlenz
parents: 344
diff changeset
248 'long', tzinfo=timezone('US/Eastern'),
76bfb34282af Fixes for timezone calculations in time formatting (#83).
cmlenz
parents: 344
diff changeset
249 locale='en')
76bfb34282af Fixes for timezone calculations in time formatting (#83).
cmlenz
parents: 344
diff changeset
250 self.assertEqual('11:30:00 AM EDT', string)
76bfb34282af Fixes for timezone calculations in time formatting (#83).
cmlenz
parents: 344
diff changeset
251
19
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
252 def test_with_date_fields_in_pattern(self):
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
253 self.assertRaises(AttributeError, dates.format_time, date(2007, 04, 01),
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
254 "yyyy-MM-dd HH:mm", locale='en_US')
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
255
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
256 def test_with_date_fields_in_pattern_and_datetime_param(self):
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
257 self.assertRaises(AttributeError, dates.format_time,
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
258 datetime(2007, 04, 01, 15, 30),
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
259 "yyyy-MM-dd HH:mm", locale='en_US')
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
260
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
261
395
a0457635279d The `format_timedelta` function now returns, for example, ?1 day? instead of ?0 days? if the granularity is `day` and the delta is less than a day but greater than zero.
cmlenz
parents: 375
diff changeset
262 class FormatTimedeltaTestCase(unittest.TestCase):
a0457635279d The `format_timedelta` function now returns, for example, ?1 day? instead of ?0 days? if the granularity is `day` and the delta is less than a day but greater than zero.
cmlenz
parents: 375
diff changeset
263
a0457635279d The `format_timedelta` function now returns, for example, ?1 day? instead of ?0 days? if the granularity is `day` and the delta is less than a day but greater than zero.
cmlenz
parents: 375
diff changeset
264 def test_zero_seconds(self):
a0457635279d The `format_timedelta` function now returns, for example, ?1 day? instead of ?0 days? if the granularity is `day` and the delta is less than a day but greater than zero.
cmlenz
parents: 375
diff changeset
265 string = dates.format_timedelta(timedelta(seconds=0), locale='en')
519
045782926b0c fix expected output from !FormatTimedeltaTestCase in babel.tests.dates and ensure it will be executed during the normal test run (see #259)
fschwarz
parents: 512
diff changeset
266 self.assertEqual('0 secs', string)
395
a0457635279d The `format_timedelta` function now returns, for example, ?1 day? instead of ?0 days? if the granularity is `day` and the delta is less than a day but greater than zero.
cmlenz
parents: 375
diff changeset
267 string = dates.format_timedelta(timedelta(seconds=0),
a0457635279d The `format_timedelta` function now returns, for example, ?1 day? instead of ?0 days? if the granularity is `day` and the delta is less than a day but greater than zero.
cmlenz
parents: 375
diff changeset
268 granularity='hour', locale='en')
519
045782926b0c fix expected output from !FormatTimedeltaTestCase in babel.tests.dates and ensure it will be executed during the normal test run (see #259)
fschwarz
parents: 512
diff changeset
269 self.assertEqual('0 hrs', string)
395
a0457635279d The `format_timedelta` function now returns, for example, ?1 day? instead of ?0 days? if the granularity is `day` and the delta is less than a day but greater than zero.
cmlenz
parents: 375
diff changeset
270
a0457635279d The `format_timedelta` function now returns, for example, ?1 day? instead of ?0 days? if the granularity is `day` and the delta is less than a day but greater than zero.
cmlenz
parents: 375
diff changeset
271 def test_small_value_with_granularity(self):
a0457635279d The `format_timedelta` function now returns, for example, ?1 day? instead of ?0 days? if the granularity is `day` and the delta is less than a day but greater than zero.
cmlenz
parents: 375
diff changeset
272 string = dates.format_timedelta(timedelta(seconds=42),
a0457635279d The `format_timedelta` function now returns, for example, ?1 day? instead of ?0 days? if the granularity is `day` and the delta is less than a day but greater than zero.
cmlenz
parents: 375
diff changeset
273 granularity='hour', locale='en')
519
045782926b0c fix expected output from !FormatTimedeltaTestCase in babel.tests.dates and ensure it will be executed during the normal test run (see #259)
fschwarz
parents: 512
diff changeset
274 self.assertEqual('1 hr', string)
395
a0457635279d The `format_timedelta` function now returns, for example, ?1 day? instead of ?0 days? if the granularity is `day` and the delta is less than a day but greater than zero.
cmlenz
parents: 375
diff changeset
275
a0457635279d The `format_timedelta` function now returns, for example, ?1 day? instead of ?0 days? if the granularity is `day` and the delta is less than a day but greater than zero.
cmlenz
parents: 375
diff changeset
276
512
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
277 class TimeZoneAdjustTestCase(unittest.TestCase):
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
278 def _utc(self):
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
279 UTC = FixedOffsetTimezone(0, 'UTC')
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
280 def fake_localize(self, dt, is_dst=False):
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
281 raise NotImplementedError()
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
282 UTC.localize = new.instancemethod(fake_localize, UTC, UTC.__class__)
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
283 # This is important to trigger the actual bug (#257)
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
284 self.assertEqual(False, hasattr(UTC, 'normalize'))
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
285 return UTC
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
286
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
287 def test_can_format_time_with_non_pytz_timezone(self):
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
288 # regression test for #257
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
289 utc = self._utc()
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
290 t = datetime(2007, 4, 1, 15, 30, tzinfo=utc)
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
291 formatted_time = dates.format_time(t, 'long', tzinfo=utc, locale='en')
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
292 self.assertEqual('3:30:00 PM +0000', formatted_time)
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
293
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
294
1
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
295 def suite():
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
296 suite = unittest.TestSuite()
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
297 suite.addTest(doctest.DocTestSuite(dates))
15
244a74232f5e Minor date formatting improvements.
cmlenz
parents: 12
diff changeset
298 suite.addTest(unittest.makeSuite(DateTimeFormatTestCase))
19
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
299 suite.addTest(unittest.makeSuite(FormatDateTestCase))
d8352fbaca65 Moved some datetime tests from doctest to unittest, to avoid breaking docutils/epydoc doctest block detection.
cmlenz
parents: 16
diff changeset
300 suite.addTest(unittest.makeSuite(FormatTimeTestCase))
519
045782926b0c fix expected output from !FormatTimedeltaTestCase in babel.tests.dates and ensure it will be executed during the normal test run (see #259)
fschwarz
parents: 512
diff changeset
301 suite.addTest(unittest.makeSuite(FormatTimedeltaTestCase))
512
9faa35a31ec7 add tests from r563 to trunk
fschwarz
parents: 438
diff changeset
302 suite.addTest(unittest.makeSuite(TimeZoneAdjustTestCase))
1
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
303 return suite
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
304
395
a0457635279d The `format_timedelta` function now returns, for example, ?1 day? instead of ?0 days? if the granularity is `day` and the delta is less than a day but greater than zero.
cmlenz
parents: 375
diff changeset
305
1
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
306 if __name__ == '__main__':
7870274479f5 Import of initial code base.
cmlenz
parents:
diff changeset
307 unittest.main(defaultTest='suite')
Copyright (C) 2012-2017 Edgewall Software