PythonExtra/tests/micropython/const2.py
David Lechner 3dc324d3f1 tests: Format all Python code with black, except tests in basics subdir.
This adds the Python files in the tests/ directory to be formatted with
./tools/codeformat.py.  The basics/ subdirectory is excluded for now so we
aren't changing too much at once.

In a few places `# fmt: off`/`# fmt: on` was used where the code had
special formatting for readability or where the test was actually testing
the specific formatting.
2020-03-30 13:21:58 +11:00

45 lines
633 B
Python

# check that consts are not replaced in anything except standalone identifiers
from micropython import const
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()