@@ -4014,11 +4014,24 @@ def methodwrapper():
|
4014 | 4014 | |
4015 | 4015 | l = [] |
4016 | 4016 | vereq(l.__add__, l.__add__) |
4017 | | -verify(l.__add__ != [].__add__) |
| 4017 | +vereq(l.__add__, [].__add__) |
| 4018 | +verify(l.__add__ != [5].__add__) |
| 4019 | +verify(l.__add__ != l.__mul__) |
4018 | 4020 | verify(l.__add__.__name__ == '__add__') |
4019 | 4021 | verify(l.__add__.__self__ is l) |
4020 | 4022 | verify(l.__add__.__objclass__ is list) |
4021 | 4023 | vereq(l.__add__.__doc__, list.__add__.__doc__) |
| 4024 | +try: |
| 4025 | +hash(l.__add__) |
| 4026 | +except TypeError: |
| 4027 | +pass |
| 4028 | +else: |
| 4029 | +raise TestFailed("no TypeError from hash([].__add__)") |
| 4030 | + |
| 4031 | +t = () |
| 4032 | +t += (7,) |
| 4033 | +vereq(t.__add__, (7,).__add__) |
| 4034 | +vereq(hash(t.__add__), hash((7,).__add__)) |
4022 | 4035 | |
4023 | 4036 | def notimplemented(): |
4024 | 4037 | # all binary methods should be able to return a NotImplemented |
|