from datetime import datetime import sqlalchemy as sa from sqlalchemy_utils import Timestamp from tests import TestCase class TestTimestamp(TestCase): def create_models(self): class Article(self.Base, Timestamp): __tablename__ = 'article' id = sa.Column(sa.Integer, primary_key=True) name = sa.Column(sa.Unicode(255), default=u'Some article') self.Article = Article def test_created(self): then = datetime.utcnow() article = self.Article() self.session.add(article) self.session.commit() assert article.created >= then and article.created <= datetime.utcnow() def test_updated(self): article = self.Article() self.session.add(article) self.session.commit() then = datetime.utcnow() article.name = u"Something" self.session.commit() assert article.updated >= then and article.updated <= datetime.utcnow()