diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2008-09-19 22:59:28 +0000 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2008-09-19 22:59:28 +0000 |
| commit | 8d2fd5f87aaf837042d2dc5e692f84deb7dd1710 (patch) | |
| tree | 75b308c71a3a4d2d0b0b63cf964b3c3ebbd4dfae /test/sql | |
| parent | e395c05b9ac6ec5da8329c29c3b8939e3d642e2c (diff) | |
| download | sqlalchemy-8d2fd5f87aaf837042d2dc5e692f84deb7dd1710.tar.gz | |
- Overhauled SQLite date/time bind/result processing
to use regular expressions and format strings, rather
than strptime/strftime, to generically support
pre-1900 dates, dates with microseconds. [ticket:968]
Diffstat (limited to 'test/sql')
| -rw-r--r-- | test/sql/testtypes.py | 40 |
1 files changed, 25 insertions, 15 deletions
diff --git a/test/sql/testtypes.py b/test/sql/testtypes.py index 8642c4fa3..2ed8f37d7 100644 --- a/test/sql/testtypes.py +++ b/test/sql/testtypes.py @@ -521,19 +521,19 @@ class DateTest(TestBase, AssertsExecutionResults): if testing.against('oracle'): import sqlalchemy.databases.oracle as oracle insert_data = [ - [7, 'jack', + (7, 'jack', datetime.datetime(2005, 11, 10, 0, 0), datetime.date(2005,11,10), - datetime.datetime(2005, 11, 10, 0, 0, 0, 29384)], - [8, 'roy', + datetime.datetime(2005, 11, 10, 0, 0, 0, 29384)), + (8, 'roy', datetime.datetime(2005, 11, 10, 11, 52, 35), datetime.date(2005,10,10), - datetime.datetime(2006, 5, 10, 15, 32, 47, 6754)], - [9, 'foo', + datetime.datetime(2006, 5, 10, 15, 32, 47, 6754)), + (9, 'foo', datetime.datetime(2006, 11, 10, 11, 52, 35), datetime.date(1970,4,1), - datetime.datetime(2004, 9, 18, 4, 0, 52, 1043)], - [10, 'colber', None, None, None] + datetime.datetime(2004, 9, 18, 4, 0, 52, 1043)), + (10, 'colber', None, None, None), ] fnames = ['user_id', 'user_name', 'user_datetime', 'user_date', 'user_time'] @@ -555,20 +555,22 @@ class DateTest(TestBase, AssertsExecutionResults): time_micro = 0 insert_data = [ - [7, 'jack', + (7, 'jack', datetime.datetime(2005, 11, 10, 0, 0), datetime.date(2005, 11, 10), - datetime.time(12, 20, 2)], - [8, 'roy', + datetime.time(12, 20, 2)), + (8, 'roy', datetime.datetime(2005, 11, 10, 11, 52, 35), datetime.date(2005, 10, 10), - datetime.time(0, 0, 0)], - [9, 'foo', + datetime.time(0, 0, 0)), + (9, 'foo', datetime.datetime(2005, 11, 10, 11, 52, 35, datetime_micro), datetime.date(1970, 4, 1), - datetime.time(23, 59, 59, time_micro)], - [10, 'colber', None, None, None] + datetime.time(23, 59, 59, time_micro)), + (10, 'colber', None, None, None), ] + + fnames = ['user_id', 'user_name', 'user_datetime', 'user_date', 'user_time'] @@ -578,6 +580,14 @@ class DateTest(TestBase, AssertsExecutionResults): Column('user_date', Date), Column('user_time', Time)] + if testing.against('sqlite', 'postgres'): + insert_data.append( + (11, 'historic', + datetime.datetime(1850, 11, 10, 11, 52, 35, datetime_micro), + datetime.date(1727,4,1), + None), + ) + users_with_date = Table('query_users_with_date', MetaData(testing.db), *collist) users_with_date.create() @@ -592,7 +602,7 @@ class DateTest(TestBase, AssertsExecutionResults): def testdate(self): global insert_data - l = map(list, users_with_date.select().execute().fetchall()) + l = map(tuple, users_with_date.select().execute().fetchall()) self.assert_(l == insert_data, 'DateTest mismatch: got:%s expected:%s' % (l, insert_data)) |
