[Modeling-cvs] ProjectModeling/Modeling/tests test_PyModel.py,1.1.2.4,1.1.2.5
Status: Abandoned
Brought to you by:
sbigaret
From: <sbi...@us...> - 2003-05-19 10:38:10
|
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() |