mirror of
https://github.com/RustPython/RustPython.git
synced 2026-06-02 19:39:49 +09:00
29 lines
775 B
Python
29 lines
775 B
Python
from testutils import assert_raises
|
|
|
|
assert '__builtins__' in globals()
|
|
# assert type(__builtins__).__name__ == 'module'
|
|
with assert_raises(AttributeError):
|
|
__builtins__.__builtins__
|
|
|
|
__builtins__.x = 'new'
|
|
assert x == 'new' # noqa: F821
|
|
|
|
exec('assert "__builtins__" in globals()', dict())
|
|
exec('assert __builtins__ == 7', {'__builtins__': 7})
|
|
exec('assert not isinstance(__builtins__, dict)')
|
|
exec('assert isinstance(__builtins__, dict)', {})
|
|
|
|
namespace = {}
|
|
exec('', namespace)
|
|
assert namespace['__builtins__'] == __builtins__.__dict__
|
|
|
|
# with assert_raises(NameError):
|
|
# exec('print(__builtins__)', {'__builtins__': {}})
|
|
|
|
# __builtins__ is deletable but names are alive
|
|
del __builtins__
|
|
with assert_raises(NameError):
|
|
__builtins__ # noqa: F821
|
|
|
|
assert print
|