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)

Roundup Issue Tracker: http://roundup-tracker.org/