Update of /cvsroot/modeling/ProjectModeling/Modeling/tests
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14248/tests
Modified Files:
test_SQLExpression.py
Log Message:
Fixed two tests in test_SQLExpression so that it does not fail when Entity.attributesToFetch() changes the order of the returned attributes
Index: test_SQLExpression.py
===================================================================
RCS file: /cvsroot/modeling/ProjectModeling/Modeling/tests/test_SQLExpression.py,v
retrieving revision 1.12
retrieving revision 1.13
diff -C2 -d -r1.12 -r1.13
*** test_SQLExpression.py 21 Sep 2004 19:18:17 -0000 1.12
--- test_SQLExpression.py 24 Nov 2004 11:26:36 -0000 1.13
***************
*** 156,161 ****
sqlExpr.prepareSelectExpressionWithAttributes(book.attributesToFetch(),
lock=0, fetchSpec=fs)
self.assertEqual(sqlExpr.statement(),
! "SELECT DISTINCT t0.id, t0.title, t0.FK_WRITER_ID, t0.PRICE FROM BOOK t0 INNER JOIN ( WRITER t1 INNER JOIN WRITER t2 ON t1.FK_WRITER_ID=t2.ID ) ON t0.FK_WRITER_ID=t1.ID WHERE t2.LAST_NAME = 'Rabelais'")
# None/NULL value
--- 156,167 ----
sqlExpr.prepareSelectExpressionWithAttributes(book.attributesToFetch(),
lock=0, fetchSpec=fs)
+
+ # Note: the result is directly dependant on the order in which attributes
+ # are returned by Entity.attributesToFetch() (which in turn depends on
+ # other things, such as attributes that are used for locking, etc.)
+ attrs=', '.join(['t0.%s'%a.columnName() for a in book.attributesToFetch()])
+
self.assertEqual(sqlExpr.statement(),
! "SELECT DISTINCT %s FROM BOOK t0 INNER JOIN ( WRITER t1 INNER JOIN WRITER t2 ON t1.FK_WRITER_ID=t2.ID ) ON t0.FK_WRITER_ID=t1.ID WHERE t2.LAST_NAME = 'Rabelais'"%attrs)
# None/NULL value
***************
*** 167,171 ****
lock=0, fetchSpec=fs)
self.assertEqual(sqlExpr.statement(),
! "SELECT DISTINCT t0.id, t0.title, t0.FK_WRITER_ID, t0.PRICE FROM BOOK t0 INNER JOIN ( WRITER t1 INNER JOIN ( WRITER t2 INNER JOIN BOOK t3 ON t2.ID=t3.FK_WRITER_ID ) ON t1.FK_WRITER_ID=t2.ID ) ON t0.FK_WRITER_ID=t1.ID WHERE t3.PRICE IS NULL")
def test_07_prepareSelectExpressionWithAttributes_02(self):
--- 173,177 ----
lock=0, fetchSpec=fs)
self.assertEqual(sqlExpr.statement(),
! "SELECT DISTINCT %s FROM BOOK t0 INNER JOIN ( WRITER t1 INNER JOIN ( WRITER t2 INNER JOIN BOOK t3 ON t2.ID=t3.FK_WRITER_ID ) ON t1.FK_WRITER_ID=t2.ID ) ON t0.FK_WRITER_ID=t1.ID WHERE t3.PRICE IS NULL"%attrs)
def test_07_prepareSelectExpressionWithAttributes_02(self):
***************
*** 179,184 ****
lock=0,
fetchSpec=fetchSpec)
self.assertEqual(sqlExpr.statement(),
! "SELECT DISTINCT t0.id, t0.title, t0.FK_WRITER_ID, t0.PRICE FROM BOOK t0 INNER JOIN ( WRITER t1 INNER JOIN WRITER t2 ON t1.FK_WRITER_ID=t2.ID ) ON t0.FK_WRITER_ID=t1.ID WHERE t2.LAST_NAME = t1.LAST_NAME")
def test_suite():
--- 185,194 ----
lock=0,
fetchSpec=fetchSpec)
+
+ # See note in test_06_prepareSelectExpressionWithAttributes_01()
+ attrs=', '.join(['t0.%s'%a.columnName() for a in book.attributesToFetch()])
+
self.assertEqual(sqlExpr.statement(),
! "SELECT DISTINCT %s FROM BOOK t0 INNER JOIN ( WRITER t1 INNER JOIN WRITER t2 ON t1.FK_WRITER_ID=t2.ID ) ON t0.FK_WRITER_ID=t1.ID WHERE t2.LAST_NAME = t1.LAST_NAME"%attrs)
def test_suite():
|