Mercurial > p > roundup > code
comparison test/test_db.py @ 1261:85d71588a1cf
fixed bug in Interval serialisation
| author | Richard Jones <richard@users.sourceforge.net> |
|---|---|
| date | Thu, 10 Oct 2002 07:18:03 +0000 |
| parents | fe67477e678f |
| children | 9e6743c00b5f |
comparison
equal
deleted
inserted
replaced
| 1260:5a44e8cf1a62 | 1261:85d71588a1cf |
|---|---|
| 13 # BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS | 13 # BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
| 14 # FOR A PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS" | 14 # FOR A PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS" |
| 15 # BASIS, AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE, | 15 # BASIS, AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE, |
| 16 # SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. | 16 # SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. |
| 17 # | 17 # |
| 18 # $Id: test_db.py,v 1.59 2002-10-08 07:28:34 richard Exp $ | 18 # $Id: test_db.py,v 1.60 2002-10-10 07:18:03 richard Exp $ |
| 19 | 19 |
| 20 import unittest, os, shutil, time | 20 import unittest, os, shutil, time |
| 21 | 21 |
| 22 from roundup.hyperdb import String, Password, Link, Multilink, Date, \ | 22 from roundup.hyperdb import String, Password, Link, Multilink, Date, \ |
| 23 Interval, DatabaseError, Boolean, Number | 23 Interval, DatabaseError, Boolean, Number |
| 133 self.db.issue.set('1', deadline=date.Date()) | 133 self.db.issue.set('1', deadline=date.Date()) |
| 134 self.db.issue.set('1', deadline=None) | 134 self.db.issue.set('1', deadline=None) |
| 135 self.assertEqual(self.db.issue.get('1', "deadline"), None) | 135 self.assertEqual(self.db.issue.get('1', "deadline"), None) |
| 136 | 136 |
| 137 def testIntervalChange(self): | 137 def testIntervalChange(self): |
| 138 self.db.issue.create(title="spam", status='1') | 138 nid = self.db.issue.create(title="spam", status='1') |
| 139 a = self.db.issue.get('1', "foo") | 139 self.db.commit() |
| 140 self.db.issue.set('1', foo=date.Interval('-1d')) | 140 a = self.db.issue.get(nid, "foo") |
| 141 self.assertNotEqual(self.db.issue.get('1', "foo"), a) | 141 i = date.Interval('-1d') |
| 142 self.db.issue.set('1', foo=None) | 142 self.db.issue.set(nid, foo=i) |
| 143 self.assertEqual(self.db.issue.get('1', "foo"), None) | 143 self.db.commit() |
| 144 self.assertNotEqual(self.db.issue.get(nid, "foo"), a) | |
| 145 self.assertEqual(i, self.db.issue.get(nid, "foo")) | |
| 146 j = date.Interval('1y') | |
| 147 self.db.issue.set(nid, foo=j) | |
| 148 self.db.commit() | |
| 149 self.assertNotEqual(self.db.issue.get(nid, "foo"), i) | |
| 150 self.assertEqual(j, self.db.issue.get(nid, "foo")) | |
| 151 self.db.issue.set(nid, foo=None) | |
| 152 self.db.commit() | |
| 153 self.assertEqual(self.db.issue.get(nid, "foo"), None) | |
| 144 | 154 |
| 145 def testBooleanChange(self): | 155 def testBooleanChange(self): |
| 146 userid = self.db.user.create(username='foo', assignable=1) | 156 userid = self.db.user.create(username='foo', assignable=1) |
| 147 self.assertEqual(1, self.db.user.get(userid, 'assignable')) | 157 self.assertEqual(1, self.db.user.get(userid, 'assignable')) |
| 148 self.db.user.set(userid, assignable=0) | 158 self.db.user.set(userid, assignable=0) |
