summaryrefslogtreecommitdiff
path: root/examples/versioning
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2011-01-02 14:23:42 -0500
committerMike Bayer <mike_mp@zzzcomputing.com>2011-01-02 14:23:42 -0500
commit350aed3fdb9f1e73e69655e53f44ca6a91c196da (patch)
tree3d2a128667b5f6ca6d0b4e1f4865fc98aac6b60b /examples/versioning
parent71f92436bdc86f30e2c21d8f5244733601e8c39e (diff)
downloadsqlalchemy-350aed3fdb9f1e73e69655e53f44ca6a91c196da.tar.gz
- whitespace removal bonanza
Diffstat (limited to 'examples/versioning')
-rw-r--r--examples/versioning/__init__.py6
-rw-r--r--examples/versioning/history_meta.py42
-rw-r--r--examples/versioning/test_versioning.py100
3 files changed, 74 insertions, 74 deletions
diff --git a/examples/versioning/__init__.py b/examples/versioning/__init__.py
index f2f8832cf..72edcca53 100644
--- a/examples/versioning/__init__.py
+++ b/examples/versioning/__init__.py
@@ -19,13 +19,13 @@ A fragment of example usage, using declarative::
class SomeClass(Base):
__tablename__ = 'sometable'
-
+
id = Column(Integer, primary_key=True)
name = Column(String(50))
-
+
def __eq__(self, other):
assert type(other) is SomeClass and other.id == self.id
-
+
sess = Session()
sc = SomeClass(name='sc1')
sess.add(sc)
diff --git a/examples/versioning/history_meta.py b/examples/versioning/history_meta.py
index fa95733e2..2983a33e2 100644
--- a/examples/versioning/history_meta.py
+++ b/examples/versioning/history_meta.py
@@ -19,10 +19,10 @@ def _history_mapper(local_mapper):
# of the info is always loaded (currently sets it on all attributes)
for prop in local_mapper.iterate_properties:
getattr(local_mapper.class_, prop.key).impl.active_history = True
-
+
super_mapper = local_mapper.inherits
super_history_mapper = getattr(cls, '__history_mapper__', None)
-
+
polymorphic_on = None
super_fks = []
if not super_mapper or local_mapper.local_table is not super_mapper.local_table:
@@ -30,7 +30,7 @@ def _history_mapper(local_mapper):
for column in local_mapper.local_table.c:
if column.name == 'version':
continue
-
+
col = column.copy()
col.unique = False
@@ -38,16 +38,16 @@ def _history_mapper(local_mapper):
super_fks.append((col.key, list(super_history_mapper.base_mapper.local_table.primary_key)[0]))
cols.append(col)
-
+
if column is local_mapper.polymorphic_on:
polymorphic_on = col
-
+
if super_mapper:
super_fks.append(('version', super_history_mapper.base_mapper.local_table.c.version))
cols.append(Column('version', Integer, primary_key=True))
else:
cols.append(Column('version', Integer, primary_key=True))
-
+
if super_fks:
cols.append(ForeignKeyConstraint(*zip(*super_fks)))
@@ -62,13 +62,13 @@ def _history_mapper(local_mapper):
col = column.copy()
super_history_mapper.local_table.append_column(col)
table = None
-
+
if super_history_mapper:
bases = (super_history_mapper.class_,)
else:
bases = local_mapper.base_mapper.class_.__bases__
versioned_cls = type.__new__(type, "%sHistory" % cls.__name__, bases, {})
-
+
m = mapper(
versioned_cls,
table,
@@ -77,11 +77,11 @@ def _history_mapper(local_mapper):
polymorphic_identity=local_mapper.polymorphic_identity
)
cls.__history_mapper__ = m
-
+
if not super_history_mapper:
cls.version = Column('version', Integer, default=1, nullable=False)
-
-
+
+
class VersionedMeta(DeclarativeMeta):
def __init__(cls, classname, bases, dict_):
DeclarativeMeta.__init__(cls, classname, bases, dict_)
@@ -102,21 +102,21 @@ def create_version(obj, session, deleted = False):
obj_mapper = object_mapper(obj)
history_mapper = obj.__history_mapper__
history_cls = history_mapper.class_
-
+
obj_state = attributes.instance_state(obj)
-
+
attr = {}
obj_changed = False
-
+
for om, hm in zip(obj_mapper.iterate_to_root(), history_mapper.iterate_to_root()):
if hm.single:
continue
-
+
for hist_col in hm.local_table.c:
if hist_col.key == 'version':
continue
-
+
obj_col = om.local_table.c[hist_col.key]
# get the value of the
@@ -131,7 +131,7 @@ def create_version(obj, session, deleted = False):
# the "unmapped" status of the subclass column on the
# base class is a feature of the declarative module as of sqla 0.5.2.
continue
-
+
# expired object attributes and also deferred cols might not be in the
# dict. force it to load no matter what by using getattr().
if prop.key not in obj_state.dict:
@@ -148,7 +148,7 @@ def create_version(obj, session, deleted = False):
# if the attribute had no value.
attr[hist_col.key] = a[0]
obj_changed = True
-
+
if not obj_changed:
# not changed, but we have relationships. OK
# check those too
@@ -157,8 +157,8 @@ def create_version(obj, session, deleted = False):
attributes.get_history(obj, prop.key).has_changes():
obj_changed = True
break
-
- if not obj_changed and not deleted:
+
+ if not obj_changed and not deleted:
return
attr['version'] = obj.version
@@ -167,7 +167,7 @@ def create_version(obj, session, deleted = False):
setattr(hist, key, value)
session.add(hist)
obj.version += 1
-
+
class VersionedListener(SessionExtension):
def before_flush(self, session, flush_context, instances):
for obj in versioned_objects(session.dirty):
diff --git a/examples/versioning/test_versioning.py b/examples/versioning/test_versioning.py
index c9cb605cd..83d769e1e 100644
--- a/examples/versioning/test_versioning.py
+++ b/examples/versioning/test_versioning.py
@@ -8,7 +8,7 @@ from test.lib.entities import ComparableEntity
def setup():
global engine
engine = create_engine('sqlite://', echo=True)
-
+
class TestVersioning(TestBase):
def setup(self):
global Base, Session, Versioned
@@ -17,34 +17,34 @@ class TestVersioning(TestBase):
__metaclass__ = VersionedMeta
_decl_class_registry = Base._decl_class_registry
Session = sessionmaker(extension=VersionedListener())
-
+
def teardown(self):
clear_mappers()
Base.metadata.drop_all()
-
+
def create_tables(self):
Base.metadata.create_all()
-
+
def test_plain(self):
class SomeClass(Versioned, Base, ComparableEntity):
__tablename__ = 'sometable'
-
+
id = Column(Integer, primary_key=True)
name = Column(String(50))
-
+
self.create_tables()
sess = Session()
sc = SomeClass(name='sc1')
sess.add(sc)
sess.commit()
-
+
sc.name = 'sc1modified'
sess.commit()
-
+
assert sc.version == 2
-
+
SomeClassHistory = SomeClass.__history_mapper__.class_
-
+
eq_(
sess.query(SomeClassHistory).filter(SomeClassHistory.version == 1).all(),
[SomeClassHistory(version=1, name='sc1')]
@@ -61,7 +61,7 @@ class TestVersioning(TestBase):
)
assert sc.version == 3
-
+
sess.commit()
sc.name = 'temp'
@@ -76,7 +76,7 @@ class TestVersioning(TestBase):
SomeClassHistory(version=2, name='sc1modified')
]
)
-
+
sess.delete(sc)
sess.commit()
@@ -92,41 +92,41 @@ class TestVersioning(TestBase):
def test_from_null(self):
class SomeClass(Versioned, Base, ComparableEntity):
__tablename__ = 'sometable'
-
+
id = Column(Integer, primary_key=True)
name = Column(String(50))
-
+
self.create_tables()
sess = Session()
sc = SomeClass()
sess.add(sc)
sess.commit()
-
+
sc.name = 'sc1'
sess.commit()
-
+
assert sc.version == 2
def test_deferred(self):
"""test versioning of unloaded, deferred columns."""
-
+
class SomeClass(Versioned, Base, ComparableEntity):
__tablename__ = 'sometable'
id = Column(Integer, primary_key=True)
name = Column(String(50))
data = deferred(Column(String(25)))
-
+
self.create_tables()
sess = Session()
sc = SomeClass(name='sc1', data='somedata')
sess.add(sc)
sess.commit()
sess.close()
-
+
sc = sess.query(SomeClass).first()
assert 'data' not in sc.__dict__
-
+
sc.name = 'sc1modified'
sess.commit()
@@ -138,8 +138,8 @@ class TestVersioning(TestBase):
sess.query(SomeClassHistory).filter(SomeClassHistory.version == 1).all(),
[SomeClassHistory(version=1, name='sc1', data='somedata')]
)
-
-
+
+
def test_joined_inheritance(self):
class BaseClass(Versioned, Base, ComparableEntity):
__tablename__ = 'basetable'
@@ -147,9 +147,9 @@ class TestVersioning(TestBase):
id = Column(Integer, primary_key=True)
name = Column(String(50))
type = Column(String(20))
-
+
__mapper_args__ = {'polymorphic_on':type, 'polymorphic_identity':'base'}
-
+
class SubClassSeparatePk(BaseClass):
__tablename__ = 'subtable1'
@@ -175,7 +175,7 @@ class TestVersioning(TestBase):
same1 = SubClassSamePk(name='same1', subdata2='same1subdata')
sess.add_all([sep1, base1, same1])
sess.commit()
-
+
base1.name = 'base1mod'
same1.subdata2 = 'same1subdatamod'
sep1.name ='sep1mod'
@@ -189,10 +189,10 @@ class TestVersioning(TestBase):
[
SubClassSeparatePkHistory(id=1, name=u'sep1', type=u'sep', version=1),
BaseClassHistory(id=2, name=u'base1', type=u'base', version=1),
- SubClassSamePkHistory(id=3, name=u'same1', type=u'same', version=1)
+ SubClassSamePkHistory(id=3, name=u'same1', type=u'same', version=1)
]
)
-
+
same1.subdata2 = 'same1subdatamod2'
eq_(
@@ -201,7 +201,7 @@ class TestVersioning(TestBase):
SubClassSeparatePkHistory(id=1, name=u'sep1', type=u'sep', version=1),
BaseClassHistory(id=2, name=u'base1', type=u'base', version=1),
SubClassSamePkHistory(id=3, name=u'same1', type=u'same', version=1),
- SubClassSamePkHistory(id=3, name=u'same1', type=u'same', version=2)
+ SubClassSamePkHistory(id=3, name=u'same1', type=u'same', version=2)
]
)
@@ -213,7 +213,7 @@ class TestVersioning(TestBase):
BaseClassHistory(id=2, name=u'base1', type=u'base', version=1),
BaseClassHistory(id=2, name=u'base1mod', type=u'base', version=2),
SubClassSamePkHistory(id=3, name=u'same1', type=u'same', version=1),
- SubClassSamePkHistory(id=3, name=u'same1', type=u'same', version=2)
+ SubClassSamePkHistory(id=3, name=u'same1', type=u'same', version=2)
]
)
@@ -225,7 +225,7 @@ class TestVersioning(TestBase):
name = Column(String(50))
type = Column(String(50))
__mapper_args__ = {'polymorphic_on':type, 'polymorphic_identity':'base'}
-
+
class SubClass(BaseClass):
subname = Column(String(50))
@@ -236,21 +236,21 @@ class TestVersioning(TestBase):
b1 = BaseClass(name='b1')
sc = SubClass(name='s1', subname='sc1')
-
+
sess.add_all([b1, sc])
-
+
sess.commit()
-
+
b1.name='b1modified'
BaseClassHistory = BaseClass.__history_mapper__.class_
SubClassHistory = SubClass.__history_mapper__.class_
-
+
eq_(
sess.query(BaseClassHistory).order_by(BaseClassHistory.id, BaseClassHistory.version).all(),
[BaseClassHistory(id=1, name=u'b1', type=u'base', version=1)]
)
-
+
sc.name ='s1modified'
b1.name='b1modified2'
@@ -262,48 +262,48 @@ class TestVersioning(TestBase):
SubClassHistory(id=2, name=u's1', type=u'sub', version=1)
]
)
-
+
def test_unique(self):
class SomeClass(Versioned, Base, ComparableEntity):
__tablename__ = 'sometable'
-
+
id = Column(Integer, primary_key=True)
name = Column(String(50), unique=True)
data = Column(String(50))
-
+
self.create_tables()
sess = Session()
sc = SomeClass(name='sc1', data='sc1')
sess.add(sc)
sess.commit()
-
+
sc.data = 'sc1modified'
sess.commit()
-
+
assert sc.version == 2
-
+
sc.data = 'sc1modified2'
sess.commit()
-
+
assert sc.version == 3
def test_relationship(self):
class SomeRelated(Base, ComparableEntity):
__tablename__ = 'somerelated'
-
+
id = Column(Integer, primary_key=True)
class SomeClass(Versioned, Base, ComparableEntity):
__tablename__ = 'sometable'
-
+
id = Column(Integer, primary_key=True)
name = Column(String(50))
related_id = Column(Integer, ForeignKey('somerelated.id'))
related = relationship("SomeRelated")
-
+
SomeClassHistory = SomeClass.__history_mapper__.class_
-
+
self.create_tables()
sess = Session()
sc = SomeClass(name='sc1')
@@ -311,13 +311,13 @@ class TestVersioning(TestBase):
sess.commit()
assert sc.version == 1
-
+
sr1 = SomeRelated()
sc.related = sr1
sess.commit()
-
+
assert sc.version == 2
-
+
eq_(
sess.query(SomeClassHistory).filter(SomeClassHistory.version == 1).all(),
[SomeClassHistory(version=1, name='sc1', related_id=None)]
@@ -334,4 +334,4 @@ class TestVersioning(TestBase):
)
assert sc.version == 3
-
+