| OLD | NEW |
| (Empty) |
| 1 # Copyright (c) 2001-2004 Twisted Matrix Laboratories. | |
| 2 # See LICENSE for details. | |
| 3 | |
| 4 from twisted.trial import unittest | |
| 5 from twisted.python import roots | |
| 6 import types | |
| 7 | |
| 8 class RootsTest(unittest.TestCase): | |
| 9 | |
| 10 def testExceptions(self): | |
| 11 request = roots.Request() | |
| 12 try: | |
| 13 request.write("blah") | |
| 14 except NotImplementedError: | |
| 15 pass | |
| 16 else: | |
| 17 self.fail() | |
| 18 try: | |
| 19 request.finish() | |
| 20 except NotImplementedError: | |
| 21 pass | |
| 22 else: | |
| 23 self.fail() | |
| 24 | |
| 25 def testCollection(self): | |
| 26 collection = roots.Collection() | |
| 27 collection.putEntity("x", 'test') | |
| 28 self.failUnlessEqual(collection.getStaticEntity("x"), | |
| 29 'test') | |
| 30 collection.delEntity("x") | |
| 31 self.failUnlessEqual(collection.getStaticEntity('x'), | |
| 32 None) | |
| 33 try: | |
| 34 collection.storeEntity("x", None) | |
| 35 except NotImplementedError: | |
| 36 pass | |
| 37 else: | |
| 38 self.fail() | |
| 39 try: | |
| 40 collection.removeEntity("x", None) | |
| 41 except NotImplementedError: | |
| 42 pass | |
| 43 else: | |
| 44 self.fail() | |
| 45 | |
| 46 def testConstrained(self): | |
| 47 class const(roots.Constrained): | |
| 48 def nameConstraint(self, name): | |
| 49 return (name == 'x') | |
| 50 c = const() | |
| 51 self.failUnlessEqual(c.putEntity('x', 'test'), None) | |
| 52 self.failUnlessRaises(roots.ConstraintViolation, | |
| 53 c.putEntity, 'y', 'test') | |
| 54 | |
| 55 | |
| 56 def testHomogenous(self): | |
| 57 h = roots.Homogenous() | |
| 58 h.entityType = types.IntType | |
| 59 h.putEntity('a', 1) | |
| 60 self.failUnlessEqual(h.getStaticEntity('a'),1 ) | |
| 61 self.failUnlessRaises(roots.ConstraintViolation, | |
| 62 h.putEntity, 'x', 'y') | |
| 63 | |
| OLD | NEW |