Skip to content

Commit 6aa316b

Browse files
committed
improve tests
1 parent 322f2f4 commit 6aa316b

File tree

1 file changed

+15
-5
lines changed

1 file changed

+15
-5
lines changed

symengine/tests/test_pickling.py

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,11 @@ def __init__(self, name, attr):
1717
super().__init__(name=name)
1818
self.attr = attr
1919

20+
def __eq__(self, other):
21+
if not isinstance(other, MySymbolBase):
22+
return False
23+
return self.name == other.name and self.attr == other.attr
24+
2025

2126
class MySymbol(MySymbolBase):
2227
def __reduce__(self):
@@ -26,13 +31,18 @@ def __reduce__(self):
2631
def test_pysymbol():
2732
a = MySymbol("hello", attr=1)
2833
b = pickle.loads(pickle.dumps(a + 2)) - 2
29-
assert b.attr == 1
30-
a._unsafe_reset()
31-
b._unsafe_reset()
34+
try:
35+
assert a == b
36+
finally:
37+
a._unsafe_reset()
38+
b._unsafe_reset()
3239

3340
a = MySymbolBase("hello", attr=1)
34-
raises(NotImplementedError, lambda: pickle.dumps(a + 2))
35-
a._unsafe_reset()
41+
try:
42+
raises(NotImplementedError, lambda: pickle.dumps(a))
43+
raises(NotImplementedError, lambda: pickle.dumps(a + 2))
44+
finally:
45+
a._unsafe_reset()
3646

3747

3848
@unittest.skipUnless(have_llvm, "No LLVM support")

0 commit comments

Comments
 (0)