Update of /cvsroot/modeling/ProjectModeling/Modeling/tests
In directory sc8-pr-cvs1:/tmp/cvs-serv29379/tests
Modified Files:
Tag: brch-0_9pre7-1-PyModel
test_PyModel.py
Log Message:
Added tests for Associations' defaults
Index: test_PyModel.py
===================================================================
RCS file: /cvsroot/modeling/ProjectModeling/Modeling/tests/Attic/test_PyModel.py,v
retrieving revision 1.1.2.4
retrieving revision 1.1.2.5
diff -C2 -d -r1.1.2.4 -r1.1.2.5
*** test_PyModel.py 18 May 2003 16:04:14 -0000 1.1.2.4
--- test_PyModel.py 19 May 2003 10:38:07 -0000 1.1.2.5
***************
*** 404,407 ****
--- 404,456 ----
self.failIf(mark.propertyNamed('toEmployee').deleteRule()!='nullify')
+ # Check Association's defaults
+ ass_def_delete=Association.defaults['delete']
+ try:
+ Association.defaults['delete']=['deny', 'cascade']
+ self.setUp()
+ model=self.model
+ model.entities = [ Entity('Employee'), Entity('Mark'), Entity('Store'),
+ Entity('SalesClerk', parent='Employee'), ]
+ model.associations = [
+ Association('Employee', 'Store'), Association('Mark', 'Employee'), ]
+ model.build()
+ self.check_model(model)
+ self.check_inverse_rels(model)
+ emp=model.component.entityNamed('Employee')
+ mark=model.component.entityNamed('Mark')
+ store=model.component.entityNamed('Store')
+ self.failIf(emp.propertyNamed('toStore').deleteRule()!='deny')
+ self.failIf(emp.propertyNamed('toMarks').deleteRule()!='cascade')
+ self.failIf(store.propertyNamed('toEmployees').deleteRule()!='cascade')
+ self.failIf(mark.propertyNamed('toEmployee').deleteRule()!='deny')
+ finally:
+ Association.defaults['delete']=ass_def_delete # restore
+
+ # Association's defaults are NOT related to RToOne/RToMany defaults
+ toOne_def_delete=RToOne.defaults['delete']
+ toMany_def_delete=RToMany.defaults['delete']
+ RToOne.defaults['delete']=['deny']
+ RToOne.defaults['delete']=['cascade']
+ try:
+ self.setUp()
+ model=self.model
+ model.entities = [ Entity('Employee'), Entity('Mark'), Entity('Store'),
+ Entity('SalesClerk', parent='Employee'), ]
+ model.associations = [
+ Association('Employee', 'Store'), Association('Mark', 'Employee'), ]
+ model.build()
+ self.check_model(model)
+ self.check_inverse_rels(model)
+ emp=model.component.entityNamed('Employee')
+ mark=model.component.entityNamed('Mark')
+ store=model.component.entityNamed('Store')
+ self.failIf(emp.propertyNamed('toStore').deleteRule()=='deny')
+ self.failIf(emp.propertyNamed('toMarks').deleteRule()=='cascade')
+ self.failIf(store.propertyNamed('toEmployees').deleteRule()=='cascade')
+ self.failIf(mark.propertyNamed('toEmployee').deleteRule()=='deny')
+ finally:
+ RToOne.defaults['delete']=toOne_def_delete
+ RToOne.defaults['delete']=toMany_def_delete
+
def test_suite():
suite = unittest.TestSuite()
|