install nose and type "nosetests".
Suha Onay wrote: > > The version is ok: 0.5.3 > The problem is I don't know how to do the unit tests: no tests package. > from tests import eq_, Comparable > > How can i do the unit tests? > > Suha > > > > > On Thu, Mar 26, 2009 at 19:04, Michael Bayer <[email protected]> > wrote: >> >> not sure. make sure you're on 0.5.3. do the unit tests included >> with >> the recipe pass ? >> >> >> Suha Onay wrote: >>> Thanks for the recipe.I faced with an error. >>> >>> The model is now: >>> ------------------------------------------------------------------------------ >>> from history_meta import VersionedMeta >>> >>> Base = declarative_base(metaclass=VersionedMeta) >>> >>> class User(Base): >>> __tablename__ = 'users' >>> >>> id = sa.Column(sa.Integer, primary_key=True) >>> name = sa.Column(sa.Unicode(12)) >>> fullname = sa.Column(sa.Unicode(40)) >>> password = sa.Column(sa.Unicode(20)) >>> active = sa.Column(sa.Boolean()) >>> type = sa.Column(sa.SmallInteger()) >>> note = sa.Column(sa.Text()) >>> date_created = sa.Column(sa.Date()) >>> ------------------------------------------------------------------------------ >>> Session = sessionmaker(bind=engine, autocommit=False, autoflush=True, >>> expire_on_commit=False, extension=VersionedListener()) >>> ------------------------------------------------------------------------------ >>> >>> When inserting a new user, the error occurs: >>> sqlite3: <class 'sqlalchemy.exc.IntegrityError'> -=> ('(IntegrityError) >>> users.version may not be NULL',) >>> postgre: <class 'sqlalchemy.exc.IntegrityError'> -=> ('(IntegrityError) >>> null >>> value in column "version" violates not-null constraint\n',) >>> >>> The code in history_meta creates the column version with default value >>> 1: >>> cls.version = Column('version', Integer, default=1, nullable=False) >>> >>> What is the reason? >>> Thanks. >>> >>> Suha >>> >>> >>> >>> On Wed, Mar 25, 2009 at 17:17, Michael Bayer >>> <[email protected]>wrote: >>> >>>> >>>> I've placed a recipe for this on the wiki at >>>> http://www.sqlalchemy.org/trac/wiki/UsageRecipes/LogVersions >>>> . >>>> >>>> >>>> On Mar 25, 2009, at 10:12 AM, Suha Onay wrote: >>>> >>>> > >>>> > Hi, >>>> > >>>> > I am using sqlalchemy for a while in a project. >>>> > The project has lots of models like User: >>>> > >>>> ------------------------------------------------------------------------------ >>>> > from mcmodel import MCModel >>>> > >>>> > Base = declarative_base() >>>> > >>>> > class User(MCModel, Base): >>>> > __tablename__ = 'users' >>>> > >>>> > id = sa.Column(sa.Integer, primary_key=True) >>>> > name = sa.Column(sa.Unicode(12)) >>>> > fullname = sa.Column(sa.Unicode(40)) >>>> > password = sa.Column(sa.Unicode(20)) >>>> > active = sa.Column(sa.Boolean()) >>>> > type = sa.Column(sa.SmallInteger()) >>>> > note = sa.Column(sa.Text()) >>>> > date_created = sa.Column(sa.Date()) >>>> > >>>> ------------------------------------------------------------------------------ >>>> > All of these models inherit from MCModel (nothing doing special). >>>> > >>>> > I want to save all the changes done to a user in a seperate db table >>>> > like "_hist_users". >>>> > The new inserts do not need to be in the hist table. >>>> > When a user is updated, the old data of the user will be copied to >>>> the >>>> > hist table with a column declaring this is an update operation. >>>> > When a user is deleted, the old data of the user will be moved to >>>> the >>>> > hist table with a column declaring this is a delete operation. >>>> > With these operations, it is possible to know who modified what and >>>> > when. >>>> > >>>> > How can i achieve in this? >>>> > By modifying the MCModel to enable all the models aware of history >>>> > backup? >>>> > Or using class >>>> sqlalchemy.orm.interfaces.MapperExtension.after_update >>>> > methods? (i do not know how) >>>> > Or anything else? >>>> > >>>> > Thanks in advance. >>>> > >>>> > Suha >>>> > >>>> > >>>> > >>>> > >>>> > >>>> > >>>> > > >>>> >>>> >>>> > >>>> >>> >>> > >>> >> >> >> > >> > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/sqlalchemy?hl=en -~----------~----~----~----~------~----~------~--~---
