Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Fix != operations on lazy objects.

  • Loading branch information...
commit 714161c8642646f1f617436479313ca49c71b5c8 1 parent 59d127e
Alex Gaynor authored
View
1  django/utils/functional.py
@@ -346,6 +346,7 @@ def __repr__(self):
# care about this (especially in equality tests)
__class__ = property(new_method_proxy(operator.attrgetter("__class__")))
__eq__ = new_method_proxy(operator.eq)
+ __ne__ = new_method_proxy(operator.ne)
__hash__ = new_method_proxy(hash)
__bool__ = new_method_proxy(bool) # Python 3
__nonzero__ = __bool__ # Python 2
View
9 tests/utils_tests/test_simplelazyobject.py
@@ -152,3 +152,12 @@ def trace_func(frame, event, arg):
SimpleLazyObject(None)
finally:
sys.settrace(old_trace_func)
+
+ def test_not_equal(self):
+ lazy1 = SimpleLazyObject(lambda: 2)
+ lazy2 = SimpleLazyObject(lambda: 2)
+ lazy3 = SimpleLazyObject(lambda: 3)
+ self.assertEqual(lazy1, lazy2)
+ self.assertNotEqual(lazy1, lazy3)
+ self.assertTrue(lazy1 != lazy3)
+ self.assertFalse(lazy1 != lazy2)

0 comments on commit 714161c

Please sign in to comment.
Something went wrong with that request. Please try again.