tests/micropython: Add tests for const names being replaced in parser.
This commit is contained in:
parent
3f0c1c2452
commit
38b54b65d4
|
@ -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()
|
|
@ -0,0 +1,4 @@
|
|||
<module 'micropython'>
|
||||
function X 1
|
||||
class X 1
|
||||
method X 2 4 4
|
Loading…
Reference in New Issue