示例#1
0
 def test_default(self):
     dt = datetime.date(2008, 6, 27)
     eq_(str(dt), '2008-06-27')
     sldt = sqlite.DATE()
     bp = sldt.bind_processor(None)
     eq_(bp(dt), '2008-06-27')
     rp = sldt.result_processor(None, None)
     eq_(rp(bp(dt)), dt)
示例#2
0
 def test_custom_format(self):
     dt = datetime.date(2008, 6, 27)
     eq_(str(dt), '2008-06-27')
     sldt = sqlite.DATE(
         storage_format="%(year)04d%(month)02d%(day)02d",
         regexp="(\d{4})(\d{2})(\d{2})",
     )
     bp = sldt.bind_processor(None)
     eq_(bp(dt), '20080627')
     rp = sldt.result_processor(None, None)
     eq_(rp(bp(dt)), dt)
示例#3
0
 def test_custom_format(self):
     dt = datetime.date(2008, 6, 27)
     eq_(str(dt), '2008-06-27')
     sldt = sqlite.DATE(
         storage_format="%(month)02d/%(day)02d/%(year)04d",
         regexp="(?P<month>\d+)/(?P<day>\d+)/(?P<year>\d+)",
     )
     bp = sldt.bind_processor(None)
     eq_(bp(dt), '06/27/2008')
     rp = sldt.result_processor(None, None)
     eq_(rp(bp(dt)), dt)
示例#4
0
 def test_custom_date_text_affinity(self):
     sqlite_date = sqlite.DATE(
         storage_format="%(year)04d%(month)02d%(day)02d",
         regexp=r"(\d{4})(\d{2})(\d{2})",
     )
     t = Table('t', self.metadata, Column('d', sqlite_date))
     self.metadata.create_all(testing.db)
     testing.db.execute(t.insert().values(d=datetime.date(2010, 10, 15)))
     testing.db.execute("insert into t (d) values ('20040521')")
     eq_(
         testing.db.execute("select * from t order by d").fetchall(),
         [('20040521', ), ('20101015', )])
     eq_(
         testing.db.execute(select([t.c.d]).order_by(t.c.d)).fetchall(),
         [(datetime.date(2004, 5, 21), ), (datetime.date(2010, 10, 15), )])
示例#5
0
 def test_custom_date(self):
     sqlite_date = sqlite.DATE(
             # 2004-05-21T00:00:00
             storage_format="%(year)04d|%(month)02d|%(day)02d",
             regexp=r"(\d+)\|(\d+)\|(\d+)",
         )
     t = Table('t', self.metadata, Column('d', sqlite_date))
     self.metadata.create_all(testing.db)
     testing.db.execute(t.insert().
                     values(d=datetime.date(2010, 10, 15)))
     testing.db.execute("insert into t (d) values ('2004|05|21')")
     eq_(
         testing.db.execute("select * from t order by d").fetchall(),
         [(u'2004|05|21',), (u'2010|10|15',)]
     )
     eq_(
         testing.db.execute(select([t.c.d]).order_by(t.c.d)).fetchall(),
         [(datetime.date(2004, 5, 21),),
         (datetime.date(2010, 10, 15),)]
     )
示例#6
0
 def _fixed_lookup_fixture(self):
     return [
         (sqltypes.String(), sqltypes.VARCHAR()),
         (sqltypes.String(1), sqltypes.VARCHAR(1)),
         (sqltypes.String(3), sqltypes.VARCHAR(3)),
         (sqltypes.Text(), sqltypes.TEXT()),
         (sqltypes.Unicode(), sqltypes.VARCHAR()),
         (sqltypes.Unicode(1), sqltypes.VARCHAR(1)),
         (sqltypes.UnicodeText(), sqltypes.TEXT()),
         (sqltypes.CHAR(3), sqltypes.CHAR(3)),
         (sqltypes.NUMERIC, sqltypes.NUMERIC()),
         (sqltypes.NUMERIC(10, 2), sqltypes.NUMERIC(10, 2)),
         (sqltypes.Numeric, sqltypes.NUMERIC()),
         (sqltypes.Numeric(10, 2), sqltypes.NUMERIC(10, 2)),
         (sqltypes.DECIMAL, sqltypes.DECIMAL()),
         (sqltypes.DECIMAL(10, 2), sqltypes.DECIMAL(10, 2)),
         (sqltypes.INTEGER, sqltypes.INTEGER()),
         (sqltypes.BIGINT, sqltypes.BIGINT()),
         (sqltypes.Float, sqltypes.FLOAT()),
         (sqltypes.TIMESTAMP, sqltypes.TIMESTAMP()),
         (sqltypes.DATETIME, sqltypes.DATETIME()),
         (sqltypes.DateTime, sqltypes.DATETIME()),
         (sqltypes.DateTime(), sqltypes.DATETIME()),
         (sqltypes.DATE, sqltypes.DATE()),
         (sqltypes.Date, sqltypes.DATE()),
         (sqltypes.TIME, sqltypes.TIME()),
         (sqltypes.Time, sqltypes.TIME()),
         (sqltypes.BOOLEAN, sqltypes.BOOLEAN()),
         (sqltypes.Boolean, sqltypes.BOOLEAN()),
         (sqlite.DATE(storage_format="%(year)04d%(month)02d%(day)02d", ),
          sqltypes.DATE()),
         (sqlite.TIME(
             storage_format="%(hour)02d%(minute)02d%(second)02d", ),
          sqltypes.TIME()),
         (sqlite.DATETIME(storage_format="%(year)04d%(month)02d%(day)02d"
                          "%(hour)02d%(minute)02d%(second)02d", ),
          sqltypes.DATETIME()),
     ]