From 51bbf6a006901fd3877c6abe3d5d67de74401310 Mon Sep 17 00:00:00 2001 From: Paul Sokolovsky Date: Sun, 16 Mar 2014 15:16:54 +0200 Subject: Implement support for __str__ and __repr__ special methods in classes. --- tests/basics/class_str.py | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 tests/basics/class_str.py (limited to 'tests/basics/class_str.py') diff --git a/tests/basics/class_str.py b/tests/basics/class_str.py new file mode 100644 index 0000000000..46dae2b5e6 --- /dev/null +++ b/tests/basics/class_str.py @@ -0,0 +1,44 @@ +class C1: + def __init__(self, value): + self.value = value + + def __str__(self): + return "str".format(self.value) + +class C2: + def __init__(self, value): + self.value = value + + def __repr__(self): + return "repr".format(self.value) + +class C3: + def __init__(self, value): + self.value = value + + def __str__(self): + return "str".format(self.value) + + def __repr__(self): + return "repr".format(self.value) + +c1 = C1(1) +print(c1) + +c2 = C2(2) +print(c2) + +s11 = str(c1) +print(s11) +# This will use builtin repr(), which uses id(), which is of course different +# between CPython and MicroPython +s12 = repr(c1) +print("C1 object at" in s12) + +s21 = str(c2) +print(s21) +s22 = repr(c2) +print(s22) + +c3 = C3(1) +print(c3) -- cgit v1.2.3