2016-10-10 20:01:22 -04:00
|
|
|
import micropython as micropython
|
|
|
|
|
|
|
|
# check we can get and set the level
|
|
|
|
micropython.opt_level(0)
|
|
|
|
print(micropython.opt_level())
|
|
|
|
micropython.opt_level(1)
|
|
|
|
print(micropython.opt_level())
|
|
|
|
|
|
|
|
# check that the optimisation levels actually differ
|
|
|
|
micropython.opt_level(0)
|
2021-03-15 09:57:36 -04:00
|
|
|
exec("print(__debug__)")
|
2016-10-10 20:01:22 -04:00
|
|
|
micropython.opt_level(1)
|
2021-03-15 09:57:36 -04:00
|
|
|
exec("print(__debug__)")
|
|
|
|
exec("assert 0")
|
2017-01-19 07:38:11 -05:00
|
|
|
|
|
|
|
# check that level 3 doesn't store line numbers
|
2017-03-09 17:21:37 -05:00
|
|
|
# the expected output is that any line is printed as "line 1"
|
2017-01-19 07:38:11 -05:00
|
|
|
micropython.opt_level(3)
|
2021-03-15 09:57:36 -04:00
|
|
|
exec("try:\n xyz\nexcept NameError as er:\n import sys\n sys.print_exception(er)")
|