annotate tests/test_schema.py @ 73:e1ce700bd7b9

Fixed an oops
author Richard Jones <richard@users.sourceforge.net>
date Wed, 25 Jul 2001 03:40:19 +0000
parents 5147b4c51fd5
children f1cffcad4903
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
66
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
1 import unittest, os, shutil
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
3 from roundup.backends import anydbm
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
4 from roundup.hyperdb import String, Link, Multilink, Date, Interval, Class
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
5
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
6 class SchemaTestCase(unittest.TestCase):
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
7 def setUp(self):
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
8 class Database(anydbm.Database):
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
9 pass
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
10 # remove previous test, ignore errors
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
11 if os.path.exists('_test_dir'):
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
12 shutil.rmtree('_test_dir')
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
13 os.mkdir('_test_dir')
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
14 self.db = Database('_test_dir', 'test')
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
15 self.db.clear()
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
16
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
17 def tearDown(self):
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
18 self.db.close()
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
19 shutil.rmtree('_test_dir')
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
20
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
21 def testA_Status(self):
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
22 status = Class(self.db, "status", name=String())
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
23 self.assert_(status, 'no class object generated')
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
24 status.setkey("name")
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
25 val = status.create(name="unread")
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
26 self.assertEqual(val, '1', 'expecting "1"')
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
27 val = status.create(name="in-progress")
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
28 self.assertEqual(val, '2', 'expecting "2"')
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
29 val = status.create(name="testing")
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
30 self.assertEqual(val, '3', 'expecting "3"')
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
31 val = status.create(name="resolved")
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
32 self.assertEqual(val, '4', 'expecting "4"')
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
33 val = status.count()
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
34 self.assertEqual(val, 4, 'expecting 4')
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
35 val = status.list()
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
36 self.assertEqual(val, ['1', '2', '3', '4'], 'blah')
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
37 val = status.lookup("in-progress")
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
38 self.assertEqual(val, '2', 'expecting "2"')
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
39 status.retire('3')
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
40 val = status.list()
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
41 self.assertEqual(val, ['1', '2', '4'], 'blah')
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
42
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
43 def testB_Issue(self):
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
44 issue = Class(self.db, "issue", title=String(), status=Link("status"))
71
5147b4c51fd5 Added the Roundup spec to the new documentation directory.
Richard Jones <richard@users.sourceforge.net>
parents: 66
diff changeset
45 self.assert_(issue, 'no class object returned')
66
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
46
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
47 def testC_User(self):
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
48 user = Class(self.db, "user", username=String(), password=String())
71
5147b4c51fd5 Added the Roundup spec to the new documentation directory.
Richard Jones <richard@users.sourceforge.net>
parents: 66
diff changeset
49 self.assert_(user, 'no class object returned')
66
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
50 user.setkey("username")
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
51
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
52
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
53 def suite():
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
54 return unittest.makeSuite(SchemaTestCase, 'test')
b936635f142d Added some unit tests
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
55

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