From 38b54b65d4b504339cd16c88175c31f257a68f3a Mon Sep 17 00:00:00 2001 From: Damien George Date: Tue, 27 Sep 2016 13:03:53 +1000 Subject: [PATCH] tests/micropython: Add tests for const names being replaced in parser. --- tests/micropython/const2.py | 32 ++++++++++++++++++++++++++++++++ tests/micropython/const2.py.exp | 4 ++++ 2 files changed, 36 insertions(+) create mode 100644 tests/micropython/const2.py create mode 100644 tests/micropython/const2.py.exp diff --git a/tests/micropython/const2.py b/tests/micropython/const2.py new file mode 100644 index 0000000000..fb45884352 --- /dev/null +++ b/tests/micropython/const2.py @@ -0,0 +1,32 @@ +# check that consts are not replaced in anything except standalone identifiers + +X = const(1) +Y = const(2) +Z = const(3) + +# import that uses a constant +import micropython as X +print(globals()['X']) + +# function name that matches a constant +def X(): + print('function X', X) +globals()['X']() + +# arguments that match a constant +def f(X, *Y, **Z): + pass +f(1) + +# class name that matches a constant +class X: + def f(self): + print('class X', X) +globals()['X']().f() + +# constant within a class +class A: + C1 = const(4) + def X(self): + print('method X', Y, C1, self.C1) +A().X() diff --git a/tests/micropython/const2.py.exp b/tests/micropython/const2.py.exp new file mode 100644 index 0000000000..0568f91ce2 --- /dev/null +++ b/tests/micropython/const2.py.exp @@ -0,0 +1,4 @@ + +function X 1 +class X 1 +method X 2 4 4