summaryrefslogtreecommitdiff
path: root/tests/basics/special_comparisons.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/basics/special_comparisons.py')
-rw-r--r--tests/basics/special_comparisons.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/basics/special_comparisons.py b/tests/basics/special_comparisons.py
new file mode 100644
index 000000000..2ebd7e224
--- /dev/null
+++ b/tests/basics/special_comparisons.py
@@ -0,0 +1,33 @@
+class A:
+ def __eq__(self, other):
+ print("A __eq__ called")
+ return True
+
+class B:
+ def __ne__(self, other):
+ print("B __ne__ called")
+ return True
+
+class C:
+ def __eq__(self, other):
+ print("C __eq__ called")
+ return False
+
+class D:
+ def __ne__(self, other):
+ print("D __ne__ called")
+ return False
+
+a = A()
+b = B()
+c = C()
+d = D()
+
+def test(s):
+ print(s)
+ print(eval(s))
+
+for x in 'abcd':
+ for y in 'abcd':
+ test('{} == {}'.format(x,y))
+ test('{} != {}'.format(x,y))