mirror of
				https://github.com/django/django.git
				synced 2025-10-31 09:41:08 +00:00 
			
		
		
		
	Fix != operations on lazy objects.
This commit is contained in:
		| @@ -346,6 +346,7 @@ class SimpleLazyObject(LazyObject): | ||||
|     # 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 | ||||
|   | ||||
| @@ -152,3 +152,12 @@ class TestUtilsSimpleLazyObject(TestCase): | ||||
|             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) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user