Your IP : 216.73.216.213
�
f f�P � @ sg d d l Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l
Z
d d l m Z d d l
m Z m Z m Z m Z m Z m Z m Z m Z m Z e j Z d d d g Z d Z e d d � Z e d
d d � Z d
Z d d d � Z Gd d � d e j � Z d d � Z e! d k rce � n d S)� N)�support) �make_pkg�make_script�make_zip_pkg�make_zip_script�assert_python_ok�assert_python_failure�temp_dir�spawn_python�kill_pythonZtest1Ztest2Ztest3a� # Script may be run with optimisation enabled, so don't rely on assert
# statements being executed
def assertEqual(lhs, rhs):
if lhs != rhs:
raise AssertionError('%r != %r' % (lhs, rhs))
def assertIdentical(lhs, rhs):
if lhs is not rhs:
raise AssertionError('%r is not %r' % (lhs, rhs))
# Check basic code execution
result = ['Top level assignment']
def f():
result.append('Lower level reference')
f()
assertEqual(result, ['Top level assignment', 'Lower level reference'])
# Check population of magic variables
assertEqual(__name__, '__main__')
from importlib.machinery import BuiltinImporter
_loader = __loader__ if __loader__ is BuiltinImporter else type(__loader__)
print('__loader__==%a' % _loader)
print('__file__==%a' % __file__)
print('__cached__==%a' % __cached__)
print('__package__==%r' % __package__)
# Check PEP 451 details
import os.path
if __package__ is not None:
print('__main__ was located through the import system')
assertIdentical(__spec__.loader, __loader__)
expected_spec_name = os.path.splitext(os.path.basename(__file__))[0]
if __package__:
expected_spec_name = __package__ + "." + expected_spec_name
assertEqual(__spec__.name, expected_spec_name)
assertEqual(__spec__.parent, __package__)
assertIdentical(__spec__.submodule_search_locations, None)
assertEqual(__spec__.origin, __file__)
if __spec__.cached is not None:
assertEqual(__spec__.cached, __cached__)
# Check the sys module
import sys
assertIdentical(globals(), sys.modules[__name__].__dict__)
if __spec__ is not None:
# XXX: We're not currently making __main__ available under its real name
pass # assertIdentical(globals(), sys.modules[__spec__.name].__dict__)
from test import test_cmd_line_script
example_args_list = test_cmd_line_script.example_args
assertEqual(sys.argv[1:], example_args_list)
print('sys.argv[0]==%a' % sys.argv[0])
print('sys.path[0]==%a' % sys.path[0])
# Check the working directory
import os
print('cwd==%a' % os.getcwd())
c C s t | | | � } t j � | S)N)r � importlib�invalidate_caches)�
script_dir�script_basename�source� to_return� r �>/opt/alt/python34/lib64/python3.4/test/test_cmd_line_script.py�_make_test_scriptN s
r � c C s) t | | | | | | � } t j � | S)N)r r r
)Zzip_dirZzip_basenameZpkg_namer r �depthr r r r �_make_test_zip_pkgS s
r zPimport sys, os.path, runpy
sys.path.insert(0, %s)
runpy._run_module_as_main(%r)
c C sQ | d k r d } n t | � } t | | f } t | | | � } t j � | S)Nzos.path.dirname(__file__))�repr�
launch_sourcer r r
)r r Zmodule_name�pathr r r r r �_make_launch_scriptd s
r c @ s� e Z d Z d d � Z d d � Z d d � Z d d � Z d d
� Z e j d d d
� � Z
d d d � Z d d d � Z d d � Z
d d � Z d d � Z d d � Z d d � Z d d � Z d d � Z d d! � Z d"