summaryrefslogtreecommitdiff
path: root/test/base/utils.py
diff options
context:
space:
mode:
authorJason Kirtland <jek@discorporate.us>2008-01-24 01:00:41 +0000
committerJason Kirtland <jek@discorporate.us>2008-01-24 01:00:41 +0000
commite94c3ba27a5e07d1c77fed36bf6fcd3c44848118 (patch)
tree63df9bd9cf5feb62e31ad6edc5f64d02b8ae0293 /test/base/utils.py
parent42a3344ebabc1a32b4c726fac00f6c4baf1d1246 (diff)
downloadsqlalchemy-e94c3ba27a5e07d1c77fed36bf6fcd3c44848118.tar.gz
- IdentitySet binops no longer accept plain sets.
Diffstat (limited to 'test/base/utils.py')
-rw-r--r--test/base/utils.py23
1 files changed, 20 insertions, 3 deletions
diff --git a/test/base/utils.py b/test/base/utils.py
index 837eb058f..9d6526379 100644
--- a/test/base/utils.py
+++ b/test/base/utils.py
@@ -226,13 +226,30 @@ class IdentitySetTest(unittest.TestCase):
self.assert_(False)
except TypeError:
self.assert_(True)
- s = set([o1,o2])
- s |= ids
- self.assert_(isinstance(s, IdentitySet))
+
+ try:
+ s = set([o1,o2])
+ s |= ids
+ self.assert_(False)
+ except TypeError:
+ self.assert_(True)
self.assertRaises(TypeError, cmp, ids)
self.assertRaises(TypeError, hash, ids)
+ def test_difference(self):
+ os1 = util.IdentitySet([1,2,3])
+ os2 = util.IdentitySet([3,4,5])
+ s1 = set([1,2,3])
+ s2 = set([3,4,5])
+
+ self.assertEquals(os1 - os2, util.IdentitySet([1, 2]))
+ self.assertEquals(os2 - os1, util.IdentitySet([4, 5]))
+ self.assertRaises(TypeError, lambda: os1 - s2)
+ self.assertRaises(TypeError, lambda: os1 - [3, 4, 5])
+ self.assertRaises(TypeError, lambda: s1 - os2)
+ self.assertRaises(TypeError, lambda: s1 - [3, 4, 5])
+
class DictlikeIteritemsTest(unittest.TestCase):
baseline = set([('a', 1), ('b', 2), ('c', 3)])