From a8dc787ff02490da17e8704ca564bf0c6b46c04d Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Tue, 6 Dec 2011 13:22:59 -0500 Subject: - [feature] IdentitySet supports the - operator as the same as difference(), handy when dealing with Session.dirty etc. [ticket:2301] --- test/base/test_utils.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'test/base/test_utils.py') diff --git a/test/base/test_utils.py b/test/base/test_utils.py index 61c7ad9d6..3a7ce07f2 100644 --- a/test/base/test_utils.py +++ b/test/base/test_utils.py @@ -290,6 +290,19 @@ class IdentitySetTest(fixtures.TestBase): ids.add(data[i]) self.assert_eq(ids, data) + def test_dunder_sub(self): + IdentitySet = util.IdentitySet + o1, o2, o3 = object(), object(), object() + ids1 = IdentitySet([o1]) + ids2 = IdentitySet([o1, o2, o3]) + eq_( + ids2 - ids1, + IdentitySet([o2, o3]) + ) + + ids2 -= ids1 + eq_(ids2, IdentitySet([o2, o3])) + def test_basic_sanity(self): IdentitySet = util.IdentitySet -- cgit v1.2.1