Linux server19.dn-server.com 3.10.0-962.3.2.lve1.5.88.el7.x86_64 #1 SMP Fri Sep 26 14:06:42 UTC 2025 x86_64
LiteSpeed
Server IP : 46.209.20.154 & Your IP : 216.73.216.48
Domains :
Cant Read [ /etc/named.conf ]
User : emadteam
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
lib64 /
python2.7 /
test /
Delete
Unzip
Name
Size
Permission
Date
Action
capath
[ DIR ]
drwxr-xr-x
2025-12-18 21:38
cjkencodings
[ DIR ]
drwxr-xr-x
2025-12-18 21:38
data
[ DIR ]
drwxr-xr-x
2025-12-18 21:38
decimaltestdata
[ DIR ]
drwxr-xr-x
2025-12-18 21:38
subprocessdata
[ DIR ]
drwxr-xr-x
2025-12-18 21:38
tracedmodules
[ DIR ]
drwxr-xr-x
2025-12-18 21:38
xmltestdata
[ DIR ]
drwxr-xr-x
2025-12-18 21:38
185test.db
16
KB
-rw-r--r--
2025-11-12 17:54
Sine-1000Hz-300ms.aif
60.25
KB
-rw-r--r--
2025-11-12 17:54
__init__.py
47
B
-rw-r--r--
2025-11-12 17:54
__init__.pyc
124
B
-rw-r--r--
2025-11-12 17:55
__init__.pyo
124
B
-rw-r--r--
2025-11-12 17:55
allsans.pem
4.92
KB
-rw-r--r--
2025-11-12 17:54
autotest.py
211
B
-rw-r--r--
2025-11-12 17:54
autotest.pyc
198
B
-rw-r--r--
2025-11-12 17:55
autotest.pyo
198
B
-rw-r--r--
2025-11-12 17:55
bad_coding.py
24
B
-rw-r--r--
2025-11-12 17:54
bad_coding2.py
29
B
-rw-r--r--
2025-11-12 17:54
badcert.pem
1.88
KB
-rw-r--r--
2025-11-12 17:54
badkey.pem
2.11
KB
-rw-r--r--
2025-11-12 17:54
badsyntax_future3.py
172
B
-rw-r--r--
2025-11-12 17:54
badsyntax_future4.py
153
B
-rw-r--r--
2025-11-12 17:54
badsyntax_future5.py
184
B
-rw-r--r--
2025-11-12 17:54
badsyntax_future6.py
161
B
-rw-r--r--
2025-11-12 17:54
badsyntax_future7.py
196
B
-rw-r--r--
2025-11-12 17:54
badsyntax_future8.py
121
B
-rw-r--r--
2025-11-12 17:54
badsyntax_future9.py
141
B
-rw-r--r--
2025-11-12 17:54
badsyntax_nocaret.py
33
B
-rw-r--r--
2025-11-12 17:54
buffer_tests.py
10.33
KB
-rw-r--r--
2025-11-12 17:54
buffer_tests.pyc
9.91
KB
-rw-r--r--
2025-11-12 17:55
buffer_tests.pyo
9.91
KB
-rw-r--r--
2025-11-12 17:55
cfgparser.1
21
B
-rw-r--r--
2025-11-12 17:54
check_soundcard.vbs
411
B
-rw-r--r--
2025-11-12 17:54
cmath_testcases.txt
133.63
KB
-rw-r--r--
2025-11-12 17:54
curses_tests.py
1.21
KB
-rw-r--r--
2025-11-12 17:54
curses_tests.pyc
1.45
KB
-rw-r--r--
2025-11-12 17:55
curses_tests.pyo
1.45
KB
-rw-r--r--
2025-11-12 17:55
doctest_aliases.py
239
B
-rw-r--r--
2025-11-12 17:54
doctest_aliases.pyc
607
B
-rw-r--r--
2025-11-12 17:55
doctest_aliases.pyo
607
B
-rw-r--r--
2025-11-12 17:55
double_const.py
1.19
KB
-rw-r--r--
2025-11-12 17:54
double_const.pyc
755
B
-rw-r--r--
2025-11-12 17:55
double_const.pyo
687
B
-rw-r--r--
2025-11-12 17:55
empty.vbs
70
B
-rw-r--r--
2025-11-12 17:54
exception_hierarchy.txt
1.45
KB
-rw-r--r--
2025-11-12 17:54
ffdh3072.pem
2.16
KB
-rw-r--r--
2025-11-12 17:54
floating_points.txt
15.92
KB
-rw-r--r--
2025-11-12 17:54
fork_wait.py
2.24
KB
-rw-r--r--
2025-11-12 17:54
fork_wait.pyc
2.71
KB
-rw-r--r--
2025-11-12 17:55
fork_wait.pyo
2.71
KB
-rw-r--r--
2025-11-12 17:55
formatfloat_testcases.txt
7.83
KB
-rw-r--r--
2025-11-12 17:54
gdb_sample.py
156
B
-rw-r--r--
2025-11-12 17:54
gdb_sample.pyc
644
B
-rw-r--r--
2025-11-12 17:55
gdb_sample.pyo
644
B
-rw-r--r--
2025-11-12 17:55
greyrgb.uue
93.5
KB
-rw-r--r--
2025-11-12 17:54
https_svn_python_org_root.pem
2.51
KB
-rw-r--r--
2025-11-12 17:54
ieee754.txt
3.21
KB
-rw-r--r--
2025-11-12 17:54
infinite_reload.py
324
B
-rw-r--r--
2025-11-12 17:54
infinite_reload.pyc
216
B
-rw-r--r--
2025-11-12 17:55
infinite_reload.pyo
216
B
-rw-r--r--
2025-11-12 17:55
inspect_fodder.py
841
B
-rw-r--r--
2025-11-12 17:54
inspect_fodder.pyc
2.03
KB
-rw-r--r--
2025-11-12 17:55
inspect_fodder.pyo
2.03
KB
-rw-r--r--
2025-11-12 17:55
inspect_fodder2.py
1.25
KB
-rw-r--r--
2025-11-12 17:54
inspect_fodder2.pyc
4.41
KB
-rw-r--r--
2025-11-12 17:55
inspect_fodder2.pyo
4.41
KB
-rw-r--r--
2025-11-12 17:55
keycert.passwd.pem
4
KB
-rw-r--r--
2025-11-12 17:54
keycert.pem
3.96
KB
-rw-r--r--
2025-11-12 17:54
keycert2.pem
3.97
KB
-rw-r--r--
2025-11-12 17:54
keycert3.pem
9.22
KB
-rw-r--r--
2025-11-12 17:54
keycert4.pem
9.23
KB
-rw-r--r--
2025-11-12 17:54
list_tests.py
16.14
KB
-rw-r--r--
2025-11-12 17:54
list_tests.pyc
17.77
KB
-rw-r--r--
2025-11-12 17:55
list_tests.pyo
17.77
KB
-rw-r--r--
2025-11-12 17:55
lock_tests.py
14.77
KB
-rw-r--r--
2025-11-12 17:54
lock_tests.pyc
18.83
KB
-rw-r--r--
2025-11-12 17:55
lock_tests.pyo
18.83
KB
-rw-r--r--
2025-11-12 17:55
make_ssl_certs.py
6.69
KB
-rw-r--r--
2025-11-12 17:54
make_ssl_certs.pyc
6.65
KB
-rw-r--r--
2025-11-12 17:55
make_ssl_certs.pyo
6.65
KB
-rw-r--r--
2025-11-12 17:55
mapping_tests.py
22.31
KB
-rw-r--r--
2025-11-12 17:54
mapping_tests.pyc
29.08
KB
-rw-r--r--
2025-11-12 17:55
mapping_tests.pyo
29.08
KB
-rw-r--r--
2025-11-12 17:55
math_testcases.txt
15.52
KB
-rw-r--r--
2025-11-12 17:54
mp_fork_bomb.py
387
B
-rw-r--r--
2025-11-12 17:54
mp_fork_bomb.pyc
557
B
-rw-r--r--
2025-11-12 17:55
mp_fork_bomb.pyo
557
B
-rw-r--r--
2025-11-12 17:55
nokia.pem
1.88
KB
-rw-r--r--
2025-11-12 17:54
nullbytecert.pem
5.31
KB
-rw-r--r--
2025-11-12 17:54
nullcert.pem
0
B
-rw-r--r--
2025-11-12 17:54
outstanding_bugs.py
431
B
-rw-r--r--
2025-11-12 17:54
outstanding_bugs.pyc
411
B
-rw-r--r--
2025-11-12 17:55
outstanding_bugs.pyo
411
B
-rw-r--r--
2025-11-12 17:55
pickletester.py
40.65
KB
-rw-r--r--
2025-11-12 17:54
pickletester.pyc
44
KB
-rw-r--r--
2025-11-12 17:55
pickletester.pyo
43.86
KB
-rw-r--r--
2025-11-12 17:55
profilee.py
2.97
KB
-rw-r--r--
2025-11-12 17:54
profilee.pyc
2.95
KB
-rw-r--r--
2025-11-12 17:55
profilee.pyo
2.95
KB
-rw-r--r--
2025-11-12 17:55
pycacert.pem
5.52
KB
-rw-r--r--
2025-11-12 17:54
pyclbr_input.py
648
B
-rw-r--r--
2025-11-12 17:54
pyclbr_input.pyc
1.72
KB
-rw-r--r--
2025-11-12 17:55
pyclbr_input.pyo
1.72
KB
-rw-r--r--
2025-11-12 17:55
pydoc_mod.py
439
B
-rw-r--r--
2025-11-12 17:54
pydoc_mod.pyc
1.22
KB
-rw-r--r--
2025-11-12 17:55
pydoc_mod.pyo
1.22
KB
-rw-r--r--
2025-11-12 17:55
pydocfodder.py
6.18
KB
-rw-r--r--
2025-11-12 17:54
pydocfodder.pyc
15.69
KB
-rw-r--r--
2025-11-12 17:55
pydocfodder.pyo
15.69
KB
-rw-r--r--
2025-11-12 17:55
pystone.py
7.19
KB
-rwxr-xr-x
2025-11-12 17:54
pystone.pyc
7.84
KB
-rw-r--r--
2025-11-12 17:55
pystone.pyo
7.84
KB
-rw-r--r--
2025-11-12 17:55
randv2_32.pck
7.34
KB
-rw-r--r--
2025-11-12 17:54
randv2_64.pck
7.19
KB
-rw-r--r--
2025-11-12 17:54
randv3.pck
7.82
KB
-rw-r--r--
2025-11-12 17:54
re_tests.py
31.11
KB
-rwxr-xr-x
2025-11-12 17:54
re_tests.pyc
18.24
KB
-rw-r--r--
2025-11-12 17:55
re_tests.pyo
18.24
KB
-rw-r--r--
2025-11-12 17:55
recursion.tar
516
B
-rw-r--r--
2025-11-12 17:54
regrtest.py
51.36
KB
-rwxr-xr-x
2025-11-12 17:54
regrtest.pyc
43.64
KB
-rw-r--r--
2025-11-12 17:55
regrtest.pyo
43.52
KB
-rw-r--r--
2025-11-12 17:55
relimport.py
27
B
-rw-r--r--
2025-11-12 17:54
relimport.pyc
167
B
-rw-r--r--
2025-11-12 17:55
relimport.pyo
167
B
-rw-r--r--
2025-11-12 17:55
reperf.py
514
B
-rw-r--r--
2025-11-12 17:54
reperf.pyc
923
B
-rw-r--r--
2025-11-12 17:55
reperf.pyo
923
B
-rw-r--r--
2025-11-12 17:55
revocation.crl
800
B
-rw-r--r--
2025-11-12 17:54
sample_doctest.py
1.01
KB
-rw-r--r--
2025-11-12 17:54
sample_doctest.pyc
1.96
KB
-rw-r--r--
2025-11-12 17:55
sample_doctest.pyo
1.96
KB
-rw-r--r--
2025-11-12 17:55
sample_doctest_no_docstrings.py
227
B
-rw-r--r--
2025-11-12 17:54
sample_doctest_no_docstrings.pyc
512
B
-rw-r--r--
2025-11-12 17:55
sample_doctest_no_docstrings.pyo
512
B
-rw-r--r--
2025-11-12 17:55
sample_doctest_no_doctests.py
269
B
-rw-r--r--
2025-11-12 17:54
sample_doctest_no_doctests.pyc
741
B
-rw-r--r--
2025-11-12 17:55
sample_doctest_no_doctests.pyo
741
B
-rw-r--r--
2025-11-12 17:55
script_helper.py
5.66
KB
-rw-r--r--
2025-11-12 17:54
script_helper.pyc
5.65
KB
-rw-r--r--
2025-11-12 17:55
script_helper.pyo
5.66
KB
-rw-r--r--
2025-11-12 17:55
selfsigned_pythontestdotnet.pem
936
B
-rw-r--r--
2025-11-12 17:54
seq_tests.py
13.34
KB
-rw-r--r--
2025-11-12 17:54
seq_tests.pyc
18.18
KB
-rw-r--r--
2025-11-12 17:55
seq_tests.pyo
18.18
KB
-rw-r--r--
2025-11-12 17:55
sgml_input.html
8.1
KB
-rw-r--r--
2025-11-12 17:54
sha256.pem
8.15
KB
-rw-r--r--
2025-11-12 17:54
sortperf.py
4.63
KB
-rw-r--r--
2025-11-12 17:54
sortperf.pyc
4.17
KB
-rw-r--r--
2025-11-12 17:55
sortperf.pyo
4.12
KB
-rw-r--r--
2025-11-12 17:55
ssl_cert.pem
1.53
KB
-rw-r--r--
2025-11-12 17:54
ssl_key.passwd.pem
2.47
KB
-rw-r--r--
2025-11-12 17:54
ssl_key.pem
2.43
KB
-rw-r--r--
2025-11-12 17:54
ssl_servers.py
7.11
KB
-rw-r--r--
2025-11-12 17:54
ssl_servers.pyc
8.1
KB
-rw-r--r--
2025-11-12 17:55
ssl_servers.pyo
8.1
KB
-rw-r--r--
2025-11-12 17:55
string_tests.py
62.1
KB
-rw-r--r--
2025-11-12 17:54
string_tests.pyc
46.78
KB
-rw-r--r--
2025-11-12 17:55
string_tests.pyo
46.78
KB
-rw-r--r--
2025-11-12 17:55
symlink_support.py
3.18
KB
-rw-r--r--
2025-11-12 17:54
symlink_support.pyc
3.23
KB
-rw-r--r--
2025-11-12 17:55
symlink_support.pyo
3.23
KB
-rw-r--r--
2025-11-12 17:55
talos-2019-0758.pem
1.3
KB
-rw-r--r--
2025-11-12 17:54
test_MimeWriter.py
7.42
KB
-rw-r--r--
2025-11-12 17:54
test_MimeWriter.pyc
7.74
KB
-rw-r--r--
2025-11-12 17:55
test_MimeWriter.pyo
7.74
KB
-rw-r--r--
2025-11-12 17:55
test_SimpleHTTPServer.py
1.31
KB
-rw-r--r--
2025-11-12 17:54
test_SimpleHTTPServer.pyc
2.23
KB
-rw-r--r--
2025-11-12 17:55
test_SimpleHTTPServer.pyo
2.23
KB
-rw-r--r--
2025-11-12 17:55
test_StringIO.py
6.93
KB
-rw-r--r--
2025-11-12 17:54
test_StringIO.pyc
8.33
KB
-rw-r--r--
2025-11-12 17:55
test_StringIO.pyo
8.33
KB
-rw-r--r--
2025-11-12 17:55
test___all__.py
4.01
KB
-rw-r--r--
2025-11-12 17:54
test___all__.pyc
3.75
KB
-rw-r--r--
2025-11-12 17:55
test___all__.pyo
3.75
KB
-rw-r--r--
2025-11-12 17:55
test___future__.py
2.48
KB
-rw-r--r--
2025-11-12 17:54
test___future__.pyc
2.79
KB
-rw-r--r--
2025-11-12 17:55
test___future__.pyo
2.79
KB
-rw-r--r--
2025-11-12 17:55
test__locale.py
5.67
KB
-rw-r--r--
2025-11-12 17:54
test__locale.pyc
5.65
KB
-rw-r--r--
2025-11-12 17:55
test__locale.pyo
5.65
KB
-rw-r--r--
2025-11-12 17:55
test__osx_support.py
11.47
KB
-rw-r--r--
2025-11-12 17:54
test__osx_support.pyc
11
KB
-rw-r--r--
2025-11-12 17:55
test__osx_support.pyo
11
KB
-rw-r--r--
2025-11-12 17:55
test_abc.py
7.78
KB
-rw-r--r--
2025-11-12 17:54
test_abc.pyc
13.09
KB
-rw-r--r--
2025-11-12 17:55
test_abc.pyo
13.09
KB
-rw-r--r--
2025-11-12 17:55
test_abstract_numbers.py
1.65
KB
-rw-r--r--
2025-11-12 17:54
test_abstract_numbers.pyc
2.51
KB
-rw-r--r--
2025-11-12 17:55
test_abstract_numbers.pyo
2.51
KB
-rw-r--r--
2025-11-12 17:55
test_aepack.py
2.53
KB
-rw-r--r--
2025-11-12 17:54
test_aepack.pyc
3.52
KB
-rw-r--r--
2025-11-12 17:55
test_aepack.pyo
3.52
KB
-rw-r--r--
2025-11-12 17:55
test_aifc.py
5.56
KB
-rw-r--r--
2025-11-12 17:54
test_aifc.pyc
7.12
KB
-rw-r--r--
2025-11-12 17:55
test_aifc.pyo
7.12
KB
-rw-r--r--
2025-11-12 17:55
test_al.py
775
B
-rwxr-xr-x
2025-11-12 17:54
test_al.pyc
873
B
-rw-r--r--
2025-11-12 17:55
test_al.pyo
873
B
-rw-r--r--
2025-11-12 17:55
test_anydbm.py
2.23
KB
-rw-r--r--
2025-11-12 17:54
test_anydbm.pyc
3.68
KB
-rw-r--r--
2025-11-12 17:55
test_anydbm.pyo
3.68
KB
-rw-r--r--
2025-11-12 17:55
test_applesingle.py
1.77
KB
-rw-r--r--
2025-11-12 17:54
test_applesingle.pyc
2.56
KB
-rw-r--r--
2025-11-12 17:55
test_applesingle.pyo
2.56
KB
-rw-r--r--
2025-11-12 17:55
test_argparse.py
152.61
KB
-rw-r--r--
2025-11-12 17:54
test_argparse.pyc
175.78
KB
-rw-r--r--
2025-11-12 17:55
test_argparse.pyo
175.45
KB
-rw-r--r--
2025-11-12 17:55
test_array.py
36.08
KB
-rwxr-xr-x
2025-11-12 17:54
test_array.pyc
36.36
KB
-rw-r--r--
2025-11-12 17:55
test_array.pyo
36.36
KB
-rw-r--r--
2025-11-12 17:55
test_ascii_formatd.py
1.87
KB
-rw-r--r--
2025-11-12 17:54
test_ascii_formatd.pyc
2.3
KB
-rw-r--r--
2025-11-12 17:55
test_ascii_formatd.pyo
2.3
KB
-rw-r--r--
2025-11-12 17:55
test_ast.py
24.18
KB
-rw-r--r--
2025-11-12 17:54
test_ast.pyc
22.9
KB
-rw-r--r--
2025-11-12 17:55
test_ast.pyo
22.9
KB
-rw-r--r--
2025-11-12 17:55
test_asynchat.py
8.99
KB
-rw-r--r--
2025-11-12 17:54
test_asynchat.pyc
10.7
KB
-rw-r--r--
2025-11-12 17:55
test_asynchat.pyo
10.7
KB
-rw-r--r--
2025-11-12 17:55
test_asyncore.py
22.44
KB
-rw-r--r--
2025-11-12 17:54
test_asyncore.pyc
29.09
KB
-rw-r--r--
2025-11-12 17:55
test_asyncore.pyo
29.09
KB
-rw-r--r--
2025-11-12 17:55
test_atexit.py
2.12
KB
-rw-r--r--
2025-11-12 17:54
test_atexit.pyc
3.97
KB
-rw-r--r--
2025-11-12 17:55
test_atexit.pyo
3.97
KB
-rw-r--r--
2025-11-12 17:55
test_audioop.py
17.63
KB
-rw-r--r--
2025-11-12 17:54
test_audioop.pyc
18.45
KB
-rw-r--r--
2025-11-12 17:55
test_audioop.pyo
18.45
KB
-rw-r--r--
2025-11-12 17:55
test_augassign.py
7.99
KB
-rw-r--r--
2025-11-12 17:54
test_augassign.pyc
13.42
KB
-rw-r--r--
2025-11-12 17:55
test_augassign.pyo
13.42
KB
-rw-r--r--
2025-11-12 17:55
test_base64.py
9.17
KB
-rw-r--r--
2025-11-12 17:54
test_base64.pyc
8.2
KB
-rw-r--r--
2025-11-12 17:55
test_base64.pyo
8.2
KB
-rw-r--r--
2025-11-12 17:55
test_bastion.py
38
B
-rw-r--r--
2025-11-12 17:54
test_bastion.pyc
128
B
-rw-r--r--
2025-11-12 17:55
test_bastion.pyo
128
B
-rw-r--r--
2025-11-12 17:55
test_bigaddrspace.py
1.27
KB
-rw-r--r--
2025-11-12 17:54
test_bigaddrspace.pyc
1.53
KB
-rw-r--r--
2025-11-12 17:55
test_bigaddrspace.pyo
1.53
KB
-rw-r--r--
2025-11-12 17:55
test_bigmem.py
37.26
KB
-rw-r--r--
2025-11-12 17:54
test_bigmem.pyc
37.13
KB
-rw-r--r--
2025-11-12 17:55
test_bigmem.pyo
37.13
KB
-rw-r--r--
2025-11-12 17:55
test_binascii.py
8.43
KB
-rw-r--r--
2025-11-12 17:54
test_binascii.pyc
8.57
KB
-rw-r--r--
2025-11-12 17:55
test_binascii.pyo
8.57
KB
-rw-r--r--
2025-11-12 17:55
test_binhex.py
1
KB
-rwxr-xr-x
2025-11-12 17:54
test_binhex.pyc
1.77
KB
-rw-r--r--
2025-11-12 17:55
test_binhex.pyo
1.77
KB
-rw-r--r--
2025-11-12 17:55
test_binop.py
10.49
KB
-rw-r--r--
2025-11-12 17:54
test_binop.pyc
12.93
KB
-rw-r--r--
2025-11-12 17:55
test_binop.pyo
12.93
KB
-rw-r--r--
2025-11-12 17:55
test_bisect.py
14.45
KB
-rw-r--r--
2025-11-12 17:54
test_bisect.pyc
15.45
KB
-rw-r--r--
2025-11-12 17:55
test_bisect.pyo
15.45
KB
-rw-r--r--
2025-11-12 17:55
test_bool.py
13.8
KB
-rw-r--r--
2025-11-12 17:54
test_bool.pyc
14.12
KB
-rw-r--r--
2025-11-12 17:55
test_bool.pyo
14.12
KB
-rw-r--r--
2025-11-12 17:55
test_bsddb.py
11.4
KB
-rwxr-xr-x
2025-11-12 17:54
test_bsddb.pyc
13.05
KB
-rw-r--r--
2025-11-12 17:55
test_bsddb.pyo
13.05
KB
-rw-r--r--
2025-11-12 17:55
test_bsddb185.py
1.23
KB
-rw-r--r--
2025-11-12 17:54
test_bsddb185.pyc
1.91
KB
-rw-r--r--
2025-11-12 17:55
test_bsddb185.pyo
1.91
KB
-rw-r--r--
2025-11-12 17:55
test_bsddb3.py
2.71
KB
-rw-r--r--
2025-11-12 17:54
test_bsddb3.pyc
2.22
KB
-rw-r--r--
2025-11-12 17:55
test_bsddb3.pyo
2.22
KB
-rw-r--r--
2025-11-12 17:55
test_buffer.py
1.42
KB
-rw-r--r--
2025-11-12 17:54
test_buffer.pyc
2.34
KB
-rw-r--r--
2025-11-12 17:55
test_buffer.pyo
2.34
KB
-rw-r--r--
2025-11-12 17:55
test_bufio.py
2.69
KB
-rw-r--r--
2025-11-12 17:54
test_bufio.pyc
2.7
KB
-rw-r--r--
2025-11-12 17:55
test_bufio.pyo
2.7
KB
-rw-r--r--
2025-11-12 17:55
test_builtin.py
60.47
KB
-rw-r--r--
2025-11-12 17:54
test_builtin.pyc
74.76
KB
-rw-r--r--
2025-11-12 17:55
test_builtin.pyo
74.76
KB
-rw-r--r--
2025-11-12 17:55
test_bytes.py
42.7
KB
-rw-r--r--
2025-11-12 17:54
test_bytes.pyc
49.16
KB
-rw-r--r--
2025-11-12 17:55
test_bytes.pyo
49.16
KB
-rw-r--r--
2025-11-12 17:55
test_bz2.py
18.94
KB
-rw-r--r--
2025-11-12 17:54
test_bz2.pyc
19.56
KB
-rw-r--r--
2025-11-12 17:55
test_bz2.pyo
19.56
KB
-rw-r--r--
2025-11-12 17:55
test_calendar.py
28.17
KB
-rw-r--r--
2025-11-12 17:54
test_calendar.pyc
29.22
KB
-rw-r--r--
2025-11-12 17:55
test_calendar.pyo
29.22
KB
-rw-r--r--
2025-11-12 17:55
test_call.py
3.21
KB
-rw-r--r--
2025-11-12 17:54
test_call.pyc
6.08
KB
-rw-r--r--
2025-11-12 17:55
test_call.pyo
6.08
KB
-rw-r--r--
2025-11-12 17:55
test_capi.py
4.55
KB
-rw-r--r--
2025-11-12 17:54
test_capi.pyc
4.7
KB
-rw-r--r--
2025-11-12 17:55
test_capi.pyo
4.7
KB
-rw-r--r--
2025-11-12 17:55
test_cd.py
934
B
-rwxr-xr-x
2025-11-12 17:54
test_cd.pyc
1007
B
-rw-r--r--
2025-11-12 17:55
test_cd.pyo
1007
B
-rw-r--r--
2025-11-12 17:55
test_cfgparser.py
27.09
KB
-rw-r--r--
2025-11-12 17:54
test_cfgparser.pyc
27.04
KB
-rw-r--r--
2025-11-12 17:55
test_cfgparser.pyo
27.04
KB
-rw-r--r--
2025-11-12 17:55
test_cgi.py
14.06
KB
-rw-r--r--
2025-11-12 17:54
test_cgi.pyc
14.64
KB
-rw-r--r--
2025-11-12 17:55
test_cgi.pyo
14.64
KB
-rw-r--r--
2025-11-12 17:55
test_charmapcodec.py
1.8
KB
-rw-r--r--
2025-11-12 17:54
test_charmapcodec.pyc
2.62
KB
-rw-r--r--
2025-11-12 17:55
test_charmapcodec.pyo
2.62
KB
-rw-r--r--
2025-11-12 17:55
test_cl.py
3.91
KB
-rwxr-xr-x
2025-11-12 17:54
test_cl.pyc
4.89
KB
-rw-r--r--
2025-11-12 17:55
test_cl.pyo
4.89
KB
-rw-r--r--
2025-11-12 17:55
test_class.py
17.94
KB
-rw-r--r--
2025-11-12 17:54
test_class.pyc
18.53
KB
-rw-r--r--
2025-11-12 17:55
test_class.pyo
18.53
KB
-rw-r--r--
2025-11-12 17:55
test_cmath.py
18.2
KB
-rw-r--r--
2025-11-12 17:54
test_cmath.pyc
18.06
KB
-rw-r--r--
2025-11-12 17:55
test_cmath.pyo
18.06
KB
-rw-r--r--
2025-11-12 17:55
test_cmd.py
6.17
KB
-rw-r--r--
2025-11-12 17:54
test_cmd.pyc
8.19
KB
-rw-r--r--
2025-11-12 17:55
test_cmd.pyo
8.19
KB
-rw-r--r--
2025-11-12 17:55
test_cmd_line.py
5.15
KB
-rw-r--r--
2025-11-12 17:54
test_cmd_line.pyc
5.43
KB
-rw-r--r--
2025-11-12 17:55
test_cmd_line.pyo
5.43
KB
-rw-r--r--
2025-11-12 17:55
test_cmd_line_script.py
9.35
KB
-rw-r--r--
2025-11-12 17:54
test_cmd_line_script.pyc
9.38
KB
-rw-r--r--
2025-11-12 17:55
test_cmd_line_script.pyo
9.38
KB
-rw-r--r--
2025-11-12 17:55
test_code.py
3.13
KB
-rw-r--r--
2025-11-12 17:54
test_code.pyc
3.92
KB
-rw-r--r--
2025-11-12 17:55
test_code.pyo
3.92
KB
-rw-r--r--
2025-11-12 17:55
test_codeccallbacks.py
30.48
KB
-rw-r--r--
2025-11-12 17:54
test_codeccallbacks.pyc
26.14
KB
-rw-r--r--
2025-11-12 17:55
test_codeccallbacks.pyo
26.14
KB
-rw-r--r--
2025-11-12 17:55
test_codecencodings_cn.py
3.08
KB
-rw-r--r--
2025-11-12 17:54
test_codecencodings_cn.pyc
3.67
KB
-rw-r--r--
2025-11-12 17:55
test_codecencodings_cn.pyo
3.67
KB
-rw-r--r--
2025-11-12 17:55
test_codecencodings_hk.py
809
B
-rw-r--r--
2025-11-12 17:54
test_codecencodings_hk.pyc
1.16
KB
-rw-r--r--
2025-11-12 17:55
test_codecencodings_hk.pyo
1.16
KB
-rw-r--r--
2025-11-12 17:55
test_codecencodings_iso2022.py
1.43
KB
-rw-r--r--
2025-11-12 17:54
test_codecencodings_iso2022.pyc
2.16
KB
-rw-r--r--
2025-11-12 17:55
test_codecencodings_iso2022.pyo
2.16
KB
-rw-r--r--
2025-11-12 17:55
test_codecencodings_jp.py
3.85
KB
-rw-r--r--
2025-11-12 17:54
test_codecencodings_jp.pyc
4.57
KB
-rw-r--r--
2025-11-12 17:55
test_codecencodings_jp.pyo
4.57
KB
-rw-r--r--
2025-11-12 17:55
test_codecencodings_kr.py
2.69
KB
-rw-r--r--
2025-11-12 17:54
test_codecencodings_kr.pyc
3.04
KB
-rw-r--r--
2025-11-12 17:55
test_codecencodings_kr.pyo
3.04
KB
-rw-r--r--
2025-11-12 17:55
test_codecencodings_tw.py
789
B
-rw-r--r--
2025-11-12 17:54
test_codecencodings_tw.pyc
1.15
KB
-rw-r--r--
2025-11-12 17:55
test_codecencodings_tw.pyo
1.15
KB
-rw-r--r--
2025-11-12 17:55
test_codecmaps_cn.py
983
B
-rw-r--r--
2025-11-12 17:54
test_codecmaps_cn.pyc
1.43
KB
-rw-r--r--
2025-11-12 17:55
test_codecmaps_cn.pyo
1.43
KB
-rw-r--r--
2025-11-12 17:55
test_codecmaps_hk.py
553
B
-rw-r--r--
2025-11-12 17:54
test_codecmaps_hk.pyc
912
B
-rw-r--r--
2025-11-12 17:55
test_codecmaps_hk.pyo
912
B
-rw-r--r--
2025-11-12 17:55
test_codecmaps_jp.py
1.94
KB
-rw-r--r--
2025-11-12 17:54
test_codecmaps_jp.pyc
2.64
KB
-rw-r--r--
2025-11-12 17:55
test_codecmaps_jp.pyo
2.64
KB
-rw-r--r--
2025-11-12 17:55
test_codecmaps_kr.py
1.39
KB
-rw-r--r--
2025-11-12 17:54
test_codecmaps_kr.pyc
1.61
KB
-rw-r--r--
2025-11-12 17:55
test_codecmaps_kr.pyo
1.61
KB
-rw-r--r--
2025-11-12 17:55
test_codecmaps_tw.py
858
B
-rw-r--r--
2025-11-12 17:54
test_codecmaps_tw.pyc
1.24
KB
-rw-r--r--
2025-11-12 17:55
test_codecmaps_tw.pyo
1.24
KB
-rw-r--r--
2025-11-12 17:55
test_codecs.py
72.53
KB
-rw-r--r--
2025-11-12 17:54
test_codecs.pyc
62.91
KB
-rw-r--r--
2025-11-12 17:55
test_codecs.pyo
62.91
KB
-rw-r--r--
2025-11-12 17:55
test_codeop.py
7.47
KB
-rw-r--r--
2025-11-12 17:54
test_codeop.pyc
7.92
KB
-rw-r--r--
2025-11-12 17:55
test_codeop.pyo
7.92
KB
-rw-r--r--
2025-11-12 17:55
test_coding.py
1.18
KB
-rw-r--r--
2025-11-12 17:54
test_coding.pyc
2.01
KB
-rw-r--r--
2025-11-12 17:55
test_coding.pyo
2.01
KB
-rw-r--r--
2025-11-12 17:55
test_coercion.py
11.13
KB
-rw-r--r--
2025-11-12 17:54
test_coercion.pyc
15.63
KB
-rw-r--r--
2025-11-12 17:55
test_coercion.pyo
15.63
KB
-rw-r--r--
2025-11-12 17:55
test_collections.py
42.49
KB
-rw-r--r--
2025-11-12 17:54
test_collections.pyc
49.74
KB
-rw-r--r--
2025-11-12 17:55
test_collections.pyo
49.74
KB
-rw-r--r--
2025-11-12 17:55
test_colorsys.py
2.78
KB
-rw-r--r--
2025-11-12 17:54
test_colorsys.pyc
3.78
KB
-rw-r--r--
2025-11-12 17:55
test_colorsys.pyo
3.78
KB
-rw-r--r--
2025-11-12 17:55
test_commands.py
2.58
KB
-rw-r--r--
2025-11-12 17:54
test_commands.pyc
2.25
KB
-rw-r--r--
2025-11-12 17:55
test_commands.pyo
2.25
KB
-rw-r--r--
2025-11-12 17:55
test_compare.py
1.45
KB
-rw-r--r--
2025-11-12 17:54
test_compare.pyc
3.22
KB
-rw-r--r--
2025-11-12 17:55
test_compare.pyo
3.22
KB
-rw-r--r--
2025-11-12 17:55
test_compile.py
18.31
KB
-rw-r--r--
2025-11-12 17:54
test_compile.pyc
20
KB
-rw-r--r--
2025-11-12 17:55
test_compile.pyo
20
KB
-rw-r--r--
2025-11-12 17:55
test_compileall.py
2.66
KB
-rw-r--r--
2025-11-12 17:54
test_compileall.pyc
3.57
KB
-rw-r--r--
2025-11-12 17:55
test_compileall.pyo
3.57
KB
-rw-r--r--
2025-11-12 17:55
test_compiler.py
10.97
KB
-rw-r--r--
2025-11-12 17:54
test_compiler.pyc
12.67
KB
-rw-r--r--
2025-11-12 17:55
test_compiler.pyo
12.67
KB
-rw-r--r--
2025-11-12 17:55
test_complex.py
26.94
KB
-rw-r--r--
2025-11-12 17:54
test_complex.pyc
33.53
KB
-rw-r--r--
2025-11-12 17:55
test_complex.pyo
33.53
KB
-rw-r--r--
2025-11-12 17:55
test_complex_args.py
3.42
KB
-rw-r--r--
2025-11-12 17:54
test_complex_args.pyc
4.83
KB
-rw-r--r--
2025-11-12 17:55
test_complex_args.pyo
4.83
KB
-rw-r--r--
2025-11-12 17:55
test_contains.py
3.08
KB
-rw-r--r--
2025-11-12 17:54
test_contains.pyc
4.89
KB
-rw-r--r--
2025-11-12 17:55
test_contains.pyo
4.89
KB
-rw-r--r--
2025-11-12 17:55
test_contextlib.py
8.89
KB
-rw-r--r--
2025-11-12 17:54
test_contextlib.pyc
14.11
KB
-rw-r--r--
2025-11-12 17:55
test_contextlib.pyo
14.11
KB
-rw-r--r--
2025-11-12 17:55
test_cookie.py
4.85
KB
-rw-r--r--
2025-11-12 17:54
test_cookie.pyc
5.41
KB
-rw-r--r--
2025-11-12 17:55
test_cookie.pyo
5.41
KB
-rw-r--r--
2025-11-12 17:55
test_cookielib.py
71.54
KB
-rw-r--r--
2025-11-12 17:54
test_cookielib.pyc
49.41
KB
-rw-r--r--
2025-11-12 17:55
test_cookielib.pyo
49.41
KB
-rw-r--r--
2025-11-12 17:55
test_copy.py
21.07
KB
-rw-r--r--
2025-11-12 17:54
test_copy.pyc
39.84
KB
-rw-r--r--
2025-11-12 17:55
test_copy.pyo
39.84
KB
-rw-r--r--
2025-11-12 17:55
test_copy_reg.py
4.16
KB
-rw-r--r--
2025-11-12 17:54
test_copy_reg.pyc
4.43
KB
-rw-r--r--
2025-11-12 17:55
test_copy_reg.pyo
4.43
KB
-rw-r--r--
2025-11-12 17:55
test_cpickle.py
6.07
KB
-rw-r--r--
2025-11-12 17:54
test_cpickle.pyc
9.75
KB
-rw-r--r--
2025-11-12 17:55
test_cpickle.pyo
9.75
KB
-rw-r--r--
2025-11-12 17:55
test_cprofile.py
6.93
KB
-rw-r--r--
2025-11-12 17:54
test_cprofile.pyc
7.45
KB
-rw-r--r--
2025-11-12 17:55
test_cprofile.pyo
7.45
KB
-rw-r--r--
2025-11-12 17:55
test_crypt.py
1.13
KB
-rw-r--r--
2025-11-12 17:54
test_crypt.pyc
1.88
KB
-rw-r--r--
2025-11-12 17:55
test_crypt.pyo
1.88
KB
-rw-r--r--
2025-11-12 17:55
test_csv.py
39.94
KB
-rw-r--r--
2025-11-12 17:54
test_csv.pyc
42.81
KB
-rw-r--r--
2025-11-12 17:55
test_csv.pyo
42.81
KB
-rw-r--r--
2025-11-12 17:55
test_ctypes.py
418
B
-rw-r--r--
2025-11-12 17:54
test_ctypes.pyc
743
B
-rw-r--r--
2025-11-12 17:55
test_ctypes.pyo
743
B
-rw-r--r--
2025-11-12 17:55
test_curses.py
8.69
KB
-rw-r--r--
2025-11-12 17:54
test_curses.pyc
8.45
KB
-rw-r--r--
2025-11-12 17:55
test_curses.pyo
8.45
KB
-rw-r--r--
2025-11-12 17:55
test_datetime.py
131.76
KB
-rw-r--r--
2025-11-12 17:54
test_datetime.pyc
124.3
KB
-rw-r--r--
2025-11-12 17:55
test_datetime.pyo
123.98
KB
-rw-r--r--
2025-11-12 17:55
test_dbm.py
1.24
KB
-rw-r--r--
2025-11-12 17:54
test_dbm.pyc
2.43
KB
-rw-r--r--
2025-11-12 17:55
test_dbm.pyo
2.43
KB
-rw-r--r--
2025-11-12 17:55
test_decimal.py
81.9
KB
-rw-r--r--
2025-11-12 17:54
test_decimal.pyc
79.09
KB
-rw-r--r--
2025-11-12 17:55
test_decimal.pyo
79.09
KB
-rw-r--r--
2025-11-12 17:55
test_decorators.py
9.62
KB
-rw-r--r--
2025-11-12 17:54
test_decorators.pyc
14.21
KB
-rw-r--r--
2025-11-12 17:55
test_decorators.pyo
14.14
KB
-rw-r--r--
2025-11-12 17:55
test_defaultdict.py
5.69
KB
-rw-r--r--
2025-11-12 17:54
test_defaultdict.pyc
6.49
KB
-rw-r--r--
2025-11-12 17:55
test_defaultdict.pyo
6.49
KB
-rw-r--r--
2025-11-12 17:55
test_deque.py
24.74
KB
-rw-r--r--
2025-11-12 17:54
test_deque.pyc
27.99
KB
-rw-r--r--
2025-11-12 17:55
test_deque.pyo
27.95
KB
-rw-r--r--
2025-11-12 17:55
test_descr.py
156.56
KB
-rw-r--r--
2025-11-12 17:54
test_descr.pyc
200.03
KB
-rw-r--r--
2025-11-12 17:55
test_descr.pyo
199.95
KB
-rw-r--r--
2025-11-12 17:55
test_descrtut.py
11.77
KB
-rw-r--r--
2025-11-12 17:54
test_descrtut.pyc
13.09
KB
-rw-r--r--
2025-11-12 17:55
test_descrtut.pyo
13.09
KB
-rw-r--r--
2025-11-12 17:55
test_dict.py
20.71
KB
-rw-r--r--
2025-11-12 17:54
test_dict.pyc
29.18
KB
-rw-r--r--
2025-11-12 17:55
test_dict.pyo
29.18
KB
-rw-r--r--
2025-11-12 17:55
test_dictcomps.py
3.76
KB
-rw-r--r--
2025-11-12 17:54
test_dictcomps.pyc
5.81
KB
-rw-r--r--
2025-11-12 17:55
test_dictcomps.pyo
5.81
KB
-rw-r--r--
2025-11-12 17:55
test_dictviews.py
6.36
KB
-rw-r--r--
2025-11-12 17:54
test_dictviews.pyc
6.52
KB
-rw-r--r--
2025-11-12 17:55
test_dictviews.pyo
6.52
KB
-rw-r--r--
2025-11-12 17:55
test_difflib.py
10.9
KB
-rw-r--r--
2025-11-12 17:54
test_difflib.pyc
12.67
KB
-rw-r--r--
2025-11-12 17:55
test_difflib.pyo
12.67
KB
-rw-r--r--
2025-11-12 17:55
test_difflib_expect.html
100.86
KB
-rw-r--r--
2025-11-12 17:54
test_dircache.py
2.35
KB
-rw-r--r--
2025-11-12 17:54
test_dircache.pyc
2.94
KB
-rw-r--r--
2025-11-12 17:55
test_dircache.pyo
2.94
KB
-rw-r--r--
2025-11-12 17:55
test_dis.py
4.48
KB
-rw-r--r--
2025-11-12 17:54
test_dis.pyc
5.54
KB
-rw-r--r--
2025-11-12 17:55
test_dis.pyo
5.43
KB
-rw-r--r--
2025-11-12 17:55
test_distutils.py
385
B
-rw-r--r--
2025-11-12 17:54
test_distutils.pyc
724
B
-rw-r--r--
2025-11-12 17:55
test_distutils.pyo
724
B
-rw-r--r--
2025-11-12 17:55
test_dl.py
1.12
KB
-rwxr-xr-x
2025-11-12 17:54
test_dl.pyc
1.39
KB
-rw-r--r--
2025-11-12 17:55
test_dl.pyo
1.39
KB
-rw-r--r--
2025-11-12 17:55
test_doctest.py
82.72
KB
-rw-r--r--
2025-11-12 17:54
test_doctest.pyc
86.7
KB
-rw-r--r--
2025-11-12 17:55
test_doctest.pyo
86.64
KB
-rw-r--r--
2025-11-12 17:55
test_doctest.txt
296
B
-rw-r--r--
2025-11-12 17:54
test_doctest2.py
2.33
KB
-rw-r--r--
2025-11-12 17:54
test_doctest2.pyc
3.55
KB
-rw-r--r--
2025-11-12 17:55
test_doctest2.pyo
3.55
KB
-rw-r--r--
2025-11-12 17:55
test_doctest2.txt
392
B
-rw-r--r--
2025-11-12 17:54
test_doctest3.txt
81
B
-rw-r--r--
2025-11-12 17:54
test_doctest4.txt
314
B
-rw-r--r--
2025-11-12 17:54
test_docxmlrpc.py
8.31
KB
-rw-r--r--
2025-11-12 17:54
test_docxmlrpc.pyc
9.37
KB
-rw-r--r--
2025-11-12 17:55
test_docxmlrpc.pyo
9.37
KB
-rw-r--r--
2025-11-12 17:55
test_dumbdbm.py
4.73
KB
-rw-r--r--
2025-11-12 17:54
test_dumbdbm.pyc
5.95
KB
-rw-r--r--
2025-11-12 17:55
test_dumbdbm.pyo
5.95
KB
-rw-r--r--
2025-11-12 17:55
test_dummy_thread.py
7.01
KB
-rw-r--r--
2025-11-12 17:54
test_dummy_thread.pyc
7.84
KB
-rw-r--r--
2025-11-12 17:55
test_dummy_thread.pyo
7.84
KB
-rw-r--r--
2025-11-12 17:55
test_dummy_threading.py
1.8
KB
-rw-r--r--
2025-11-12 17:54
test_dummy_threading.pyc
2.26
KB
-rw-r--r--
2025-11-12 17:55
test_dummy_threading.pyo
2.26
KB
-rw-r--r--
2025-11-12 17:55
test_email.py
398
B
-rw-r--r--
2025-11-12 17:54
test_email.pyc
565
B
-rw-r--r--
2025-11-12 17:55
test_email.pyo
565
B
-rw-r--r--
2025-11-12 17:55
test_email_codecs.py
462
B
-rw-r--r--
2025-11-12 17:54
test_email_codecs.pyc
616
B
-rw-r--r--
2025-11-12 17:55
test_email_codecs.pyo
616
B
-rw-r--r--
2025-11-12 17:55
test_email_renamed.py
308
B
-rw-r--r--
2025-11-12 17:54
test_email_renamed.pyc
503
B
-rw-r--r--
2025-11-12 17:55
test_email_renamed.pyo
503
B
-rw-r--r--
2025-11-12 17:55
test_enumerate.py
7.34
KB
-rw-r--r--
2025-11-12 17:54
test_enumerate.pyc
14.53
KB
-rw-r--r--
2025-11-12 17:55
test_enumerate.pyo
14.53
KB
-rw-r--r--
2025-11-12 17:55
test_eof.py
894
B
-rw-r--r--
2025-11-12 17:54
test_eof.pyc
1.43
KB
-rw-r--r--
2025-11-12 17:55
test_eof.pyo
1.43
KB
-rw-r--r--
2025-11-12 17:55
test_epoll.py
7.32
KB
-rw-r--r--
2025-11-12 17:54
test_epoll.pyc
6.13
KB
-rw-r--r--
2025-11-12 17:55
test_epoll.pyo
6.13
KB
-rw-r--r--
2025-11-12 17:55
test_errno.py
1.16
KB
-rwxr-xr-x
2025-11-12 17:54
test_errno.pyc
1.88
KB
-rw-r--r--
2025-11-12 17:55
test_errno.pyo
1.88
KB
-rw-r--r--
2025-11-12 17:55
test_exception_variations.py
3.95
KB
-rw-r--r--
2025-11-12 17:54
test_exception_variations.pyc
4.14
KB
-rw-r--r--
2025-11-12 17:55
test_exception_variations.pyo
4.14
KB
-rw-r--r--
2025-11-12 17:55
test_exceptions.py
25.41
KB
-rw-r--r--
2025-11-12 17:54
test_exceptions.pyc
22.66
KB
-rw-r--r--
2025-11-12 17:55
test_exceptions.pyo
22.62
KB
-rw-r--r--
2025-11-12 17:55
test_extcall.py
7.52
KB
-rw-r--r--
2025-11-12 17:54
test_extcall.pyc
8.15
KB
-rw-r--r--
2025-11-12 17:55
test_extcall.pyo
8.15
KB
-rw-r--r--
2025-11-12 17:55
test_fcntl.py
4.19
KB
-rw-r--r--
2025-11-12 17:54
test_fcntl.pyc
4.74
KB
-rw-r--r--
2025-11-12 17:55
test_fcntl.pyo
4.74
KB
-rw-r--r--
2025-11-12 17:55
test_file.py
11.92
KB
-rw-r--r--
2025-11-12 17:54
test_file.pyc
11.49
KB
-rw-r--r--
2025-11-12 17:55
test_file.pyo
11.4
KB
-rw-r--r--
2025-11-12 17:55
test_file2k.py
30.77
KB
-rw-r--r--
2025-11-12 17:54
test_file2k.pyc
31.24
KB
-rw-r--r--
2025-11-12 17:55
test_file2k.pyo
31.06
KB
-rw-r--r--
2025-11-12 17:55
test_file_eintr.py
10.23
KB
-rw-r--r--
2025-11-12 17:54
test_file_eintr.pyc
8.59
KB
-rw-r--r--
2025-11-12 17:55
test_file_eintr.pyo
8.5
KB
-rw-r--r--
2025-11-12 17:55
test_filecmp.py
5.27
KB
-rw-r--r--
2025-11-12 17:54
test_filecmp.pyc
5.17
KB
-rw-r--r--
2025-11-12 17:55
test_filecmp.pyo
5.17
KB
-rw-r--r--
2025-11-12 17:55
test_fileinput.py
7.77
KB
-rw-r--r--
2025-11-12 17:54
test_fileinput.pyc
7.87
KB
-rw-r--r--
2025-11-12 17:55
test_fileinput.pyo
7.87
KB
-rw-r--r--
2025-11-12 17:55
test_fileio.py
15.14
KB
-rw-r--r--
2025-11-12 17:54
test_fileio.pyc
17.62
KB
-rw-r--r--
2025-11-12 17:55
test_fileio.pyo
17.62
KB
-rw-r--r--
2025-11-12 17:55
test_float.py
60.81
KB
-rw-r--r--
2025-11-12 17:54
test_float.pyc
47.87
KB
-rw-r--r--
2025-11-12 17:55
test_float.pyo
47.87
KB
-rw-r--r--
2025-11-12 17:55
test_fnmatch.py
2.07
KB
-rw-r--r--
2025-11-12 17:54
test_fnmatch.pyc
2.57
KB
-rw-r--r--
2025-11-12 17:55
test_fnmatch.pyo
2.57
KB
-rw-r--r--
2025-11-12 17:55
test_fork1.py
2.16
KB
-rw-r--r--
2025-11-12 17:54
test_fork1.pyc
2.41
KB
-rw-r--r--
2025-11-12 17:55
test_fork1.pyo
2.41
KB
-rw-r--r--
2025-11-12 17:55
test_format.py
13.7
KB
-rw-r--r--
2025-11-12 17:54
test_format.pyc
10.41
KB
-rw-r--r--
2025-11-12 17:55
test_format.pyo
10.41
KB
-rw-r--r--
2025-11-12 17:55
test_fpformat.py
2.25
KB
-rw-r--r--
2025-11-12 17:54
test_fpformat.pyc
2.79
KB
-rw-r--r--
2025-11-12 17:55
test_fpformat.pyo
2.79
KB
-rw-r--r--
2025-11-12 17:55
test_fractions.py
23.94
KB
-rw-r--r--
2025-11-12 17:54
test_fractions.pyc
26.32
KB
-rw-r--r--
2025-11-12 17:55
test_fractions.pyo
26.08
KB
-rw-r--r--
2025-11-12 17:55
test_frozen.py
1.21
KB
-rw-r--r--
2025-11-12 17:54
test_frozen.pyc
1.54
KB
-rw-r--r--
2025-11-12 17:55
test_frozen.pyo
1.54
KB
-rw-r--r--
2025-11-12 17:55
test_ftplib.py
25.24
KB
-rw-r--r--
2025-11-12 17:54
test_ftplib.pyc
34.13
KB
-rw-r--r--
2025-11-12 17:55
test_ftplib.pyo
34.07
KB
-rw-r--r--
2025-11-12 17:55
test_funcattrs.py
12.45
KB
-rw-r--r--
2025-11-12 17:54
test_funcattrs.pyc
14.92
KB
-rw-r--r--
2025-11-12 17:55
test_funcattrs.pyo
14.92
KB
-rw-r--r--
2025-11-12 17:55
test_functools.py
16.58
KB
-rw-r--r--
2025-11-12 17:54
test_functools.pyc
25.7
KB
-rw-r--r--
2025-11-12 17:55
test_functools.pyo
25.7
KB
-rw-r--r--
2025-11-12 17:55
test_future.py
3.77
KB
-rw-r--r--
2025-11-12 17:54
test_future.pyc
5.26
KB
-rw-r--r--
2025-11-12 17:55
test_future.pyo
5.26
KB
-rw-r--r--
2025-11-12 17:55
test_future1.py
229
B
-rw-r--r--
2025-11-12 17:54
test_future1.pyc
577
B
-rw-r--r--
2025-11-12 17:55
test_future1.pyo
577
B
-rw-r--r--
2025-11-12 17:55
test_future2.py
151
B
-rw-r--r--
2025-11-12 17:54
test_future2.pyc
591
B
-rw-r--r--
2025-11-12 17:55
test_future2.pyo
591
B
-rw-r--r--
2025-11-12 17:55
test_future3.py
576
B
-rw-r--r--
2025-11-12 17:54
test_future3.pyc
1.65
KB
-rw-r--r--
2025-11-12 17:55
test_future3.pyo
1.65
KB
-rw-r--r--
2025-11-12 17:55
test_future4.py
1.48
KB
-rw-r--r--
2025-11-12 17:54
test_future4.pyc
1.63
KB
-rw-r--r--
2025-11-12 17:55
test_future4.pyo
1.63
KB
-rw-r--r--
2025-11-12 17:55
test_future5.py
543
B
-rw-r--r--
2025-11-12 17:54
test_future5.pyc
1.25
KB
-rw-r--r--
2025-11-12 17:55
test_future5.pyo
1.25
KB
-rw-r--r--
2025-11-12 17:55
test_future_builtins.py
1.29
KB
-rw-r--r--
2025-11-12 17:54
test_future_builtins.pyc
1.92
KB
-rw-r--r--
2025-11-12 17:55
test_future_builtins.pyo
1.92
KB
-rw-r--r--
2025-11-12 17:55
test_gc.py
24.02
KB
-rw-r--r--
2025-11-12 17:54
test_gc.pyc
22.11
KB
-rw-r--r--
2025-11-12 17:55
test_gc.pyo
22.05
KB
-rw-r--r--
2025-11-12 17:55
test_gdb.py
32.45
KB
-rw-r--r--
2025-11-12 17:54
test_gdb.pyc
28.07
KB
-rw-r--r--
2025-11-12 17:55
test_gdb.pyo
28.07
KB
-rw-r--r--
2025-11-12 17:55
test_gdbm.py
2.48
KB
-rw-r--r--
2025-11-12 17:54
test_gdbm.pyc
3.45
KB
-rw-r--r--
2025-11-12 17:55
test_gdbm.pyo
3.45
KB
-rw-r--r--
2025-11-12 17:55
test_generators.py
49.58
KB
-rw-r--r--
2025-11-12 17:54
test_generators.pyc
45.06
KB
-rw-r--r--
2025-11-12 17:55
test_generators.pyo
44.4
KB
-rw-r--r--
2025-11-12 17:55
test_genericpath.py
8.97
KB
-rw-r--r--
2025-11-12 17:54
test_genericpath.pyc
8.94
KB
-rw-r--r--
2025-11-12 17:55
test_genericpath.pyo
8.94
KB
-rw-r--r--
2025-11-12 17:55
test_genexps.py
7.23
KB
-rw-r--r--
2025-11-12 17:54
test_genexps.pyc
7.47
KB
-rw-r--r--
2025-11-12 17:55
test_genexps.pyo
7.47
KB
-rw-r--r--
2025-11-12 17:55
test_getargs.py
938
B
-rw-r--r--
2025-11-12 17:54
test_getargs.pyc
1.15
KB
-rw-r--r--
2025-11-12 17:55
test_getargs.pyo
1.15
KB
-rw-r--r--
2025-11-12 17:55
test_getargs2.py
11.92
KB
-rw-r--r--
2025-11-12 17:54
test_getargs2.pyc
12.22
KB
-rw-r--r--
2025-11-12 17:55
test_getargs2.pyo
12.22
KB
-rw-r--r--
2025-11-12 17:55
test_getopt.py
6.81
KB
-rw-r--r--
2025-11-12 17:54
test_getopt.pyc
6.78
KB
-rw-r--r--
2025-11-12 17:55
test_getopt.pyo
6.78
KB
-rw-r--r--
2025-11-12 17:55
test_gettext.py
17.95
KB
-rw-r--r--
2025-11-12 17:54
test_gettext.pyc
18.64
KB
-rw-r--r--
2025-11-12 17:55
test_gettext.pyo
18.64
KB
-rw-r--r--
2025-11-12 17:55
test_gl.py
6.59
KB
-rwxr-xr-x
2025-11-12 17:54
test_gl.pyc
8.39
KB
-rw-r--r--
2025-11-12 17:55
test_gl.pyo
8.39
KB
-rw-r--r--
2025-11-12 17:55
test_glob.py
6.78
KB
-rw-r--r--
2025-11-12 17:54
test_glob.pyc
8.3
KB
-rw-r--r--
2025-11-12 17:55
test_glob.pyo
8.3
KB
-rw-r--r--
2025-11-12 17:55
test_global.py
1003
B
-rw-r--r--
2025-11-12 17:54
test_global.pyc
1.81
KB
-rw-r--r--
2025-11-12 17:55
test_global.pyo
1.81
KB
-rw-r--r--
2025-11-12 17:55
test_grammar.py
31.94
KB
-rw-r--r--
2025-11-12 17:54
test_grammar.pyc
39.38
KB
-rw-r--r--
2025-11-12 17:55
test_grammar.pyo
38.97
KB
-rw-r--r--
2025-11-12 17:55
test_grp.py
3.1
KB
-rw-r--r--
2025-11-12 17:54
test_grp.pyc
2.73
KB
-rw-r--r--
2025-11-12 17:55
test_grp.pyo
2.73
KB
-rw-r--r--
2025-11-12 17:55
test_gzip.py
9.74
KB
-rw-r--r--
2025-11-12 17:54
test_gzip.pyc
9.68
KB
-rw-r--r--
2025-11-12 17:55
test_gzip.pyo
9.68
KB
-rw-r--r--
2025-11-12 17:55
test_hash.py
7.92
KB
-rw-r--r--
2025-11-12 17:54
test_hash.pyc
12.12
KB
-rw-r--r--
2025-11-12 17:55
test_hash.pyo
12.12
KB
-rw-r--r--
2025-11-12 17:55
test_hashlib.py
20.71
KB
-rw-r--r--
2025-11-12 17:54
test_hashlib.pyc
20.84
KB
-rw-r--r--
2025-11-12 17:55
test_hashlib.pyo
20.65
KB
-rw-r--r--
2025-11-12 17:55
test_heapq.py
15.02
KB
-rw-r--r--
2025-11-12 17:54
test_heapq.pyc
22.29
KB
-rw-r--r--
2025-11-12 17:55
test_heapq.pyo
22.29
KB
-rw-r--r--
2025-11-12 17:55
test_hmac.py
16.85
KB
-rw-r--r--
2025-11-12 17:54
test_hmac.pyc
15.12
KB
-rw-r--r--
2025-11-12 17:55
test_hmac.pyo
15.12
KB
-rw-r--r--
2025-11-12 17:55
test_hotshot.py
4.87
KB
-rw-r--r--
2025-11-12 17:54
test_hotshot.pyc
6.33
KB
-rw-r--r--
2025-11-12 17:55
test_hotshot.pyo
6.33
KB
-rw-r--r--
2025-11-12 17:55
test_htmllib.py
1.93
KB
-rw-r--r--
2025-11-12 17:54
test_htmllib.pyc
3.32
KB
-rw-r--r--
2025-11-12 17:55
test_htmllib.pyo
3.32
KB
-rw-r--r--
2025-11-12 17:55
test_htmlparser.py
24.26
KB
-rw-r--r--
2025-11-12 17:54
test_htmlparser.pyc
27.42
KB
-rw-r--r--
2025-11-12 17:55
test_htmlparser.pyo
27.42
KB
-rw-r--r--
2025-11-12 17:55
test_httplib.py
31.89
KB
-rw-r--r--
2025-11-12 17:54
test_httplib.pyc
33.72
KB
-rw-r--r--
2025-11-12 17:55
test_httplib.pyo
33.72
KB
-rw-r--r--
2025-11-12 17:55
test_httpservers.py
18.75
KB
-rw-r--r--
2025-11-12 17:54
test_httpservers.pyc
24.38
KB
-rw-r--r--
2025-11-12 17:55
test_httpservers.pyo
24.38
KB
-rw-r--r--
2025-11-12 17:55
test_imageop.py
6.72
KB
-rwxr-xr-x
2025-11-12 17:54
test_imageop.pyc
5.15
KB
-rw-r--r--
2025-11-12 17:55
test_imageop.pyo
5.15
KB
-rw-r--r--
2025-11-12 17:55
test_imaplib.py
7.47
KB
-rw-r--r--
2025-11-12 17:54
test_imaplib.pyc
9.68
KB
-rw-r--r--
2025-11-12 17:55
test_imaplib.pyo
9.68
KB
-rw-r--r--
2025-11-12 17:55
test_imgfile.py
4.21
KB
-rwxr-xr-x
2025-11-12 17:54
test_imgfile.pyc
2.4
KB
-rw-r--r--
2025-11-12 17:55
test_imgfile.pyo
2.4
KB
-rw-r--r--
2025-11-12 17:55
test_imp.py
2.28
KB
-rw-r--r--
2025-11-12 17:54
test_imp.pyc
2.61
KB
-rw-r--r--
2025-11-12 17:55
test_imp.pyo
2.61
KB
-rw-r--r--
2025-11-12 17:55
test_import.py
23.25
KB
-rw-r--r--
2025-11-12 17:54
test_import.pyc
21.24
KB
-rw-r--r--
2025-11-12 17:55
test_import.pyo
21.11
KB
-rw-r--r--
2025-11-12 17:55
test_importhooks.py
8.17
KB
-rw-r--r--
2025-11-12 17:54
test_importhooks.pyc
9.93
KB
-rw-r--r--
2025-11-12 17:55
test_importhooks.pyo
9.93
KB
-rw-r--r--
2025-11-12 17:55
test_importlib.py
5.63
KB
-rw-r--r--
2025-11-12 17:54
test_importlib.pyc
6.39
KB
-rw-r--r--
2025-11-12 17:55
test_importlib.pyo
6.39
KB
-rw-r--r--
2025-11-12 17:55
test_index.py
9.72
KB
-rw-r--r--
2025-11-12 17:54
test_index.pyc
16.62
KB
-rw-r--r--
2025-11-12 17:55
test_index.pyo
16.62
KB
-rw-r--r--
2025-11-12 17:55
test_inspect.py
32.7
KB
-rw-r--r--
2025-11-12 17:54
test_inspect.pyc
39.29
KB
-rw-r--r--
2025-11-12 17:55
test_inspect.pyo
39.23
KB
-rw-r--r--
2025-11-12 17:55
test_int.py
18.11
KB
-rw-r--r--
2025-11-12 17:54
test_int.pyc
18.47
KB
-rw-r--r--
2025-11-12 17:55
test_int.pyo
18.47
KB
-rw-r--r--
2025-11-12 17:55
test_int_literal.py
8.91
KB
-rw-r--r--
2025-11-12 17:54
test_int_literal.pyc
4.88
KB
-rw-r--r--
2025-11-12 17:55
test_int_literal.pyo
4.88
KB
-rw-r--r--
2025-11-12 17:55
test_io.py
110.51
KB
-rw-r--r--
2025-11-12 17:54
test_io.pyc
117.57
KB
-rw-r--r--
2025-11-12 17:55
test_io.pyo
117.48
KB
-rw-r--r--
2025-11-12 17:55
test_ioctl.py
3.23
KB
-rw-r--r--
2025-11-12 17:54
test_ioctl.pyc
3.5
KB
-rw-r--r--
2025-11-12 17:55
test_ioctl.pyo
3.5
KB
-rw-r--r--
2025-11-12 17:55
test_isinstance.py
9.58
KB
-rw-r--r--
2025-11-12 17:54
test_isinstance.pyc
12.32
KB
-rw-r--r--
2025-11-12 17:55
test_isinstance.pyo
12.32
KB
-rw-r--r--
2025-11-12 17:55
test_iter.py
28.83
KB
-rw-r--r--
2025-11-12 17:54
test_iter.pyc
34.77
KB
-rw-r--r--
2025-11-12 17:55
test_iter.pyo
34.73
KB
-rw-r--r--
2025-11-12 17:55
test_iterlen.py
7.95
KB
-rw-r--r--
2025-11-12 17:54
test_iterlen.pyc
12.32
KB
-rw-r--r--
2025-11-12 17:55
test_iterlen.pyo
12.32
KB
-rw-r--r--
2025-11-12 17:55
test_itertools.py
65.78
KB
-rw-r--r--
2025-11-12 17:54
test_itertools.pyc
77.93
KB
-rw-r--r--
2025-11-12 17:55
test_itertools.pyo
77.93
KB
-rw-r--r--
2025-11-12 17:55
test_json.py
327
B
-rw-r--r--
2025-11-12 17:54
test_json.pyc
670
B
-rw-r--r--
2025-11-12 17:55
test_json.pyo
670
B
-rw-r--r--
2025-11-12 17:55
test_kqueue.py
6.53
KB
-rw-r--r--
2025-11-12 17:54
test_kqueue.pyc
5.75
KB
-rw-r--r--
2025-11-12 17:55
test_kqueue.pyo
5.75
KB
-rw-r--r--
2025-11-12 17:55
test_largefile.py
7.46
KB
-rw-r--r--
2025-11-12 17:54
test_largefile.pyc
6.41
KB
-rw-r--r--
2025-11-12 17:55
test_largefile.pyo
6.41
KB
-rw-r--r--
2025-11-12 17:55
test_lib2to3.py
614
B
-rw-r--r--
2025-11-12 17:54
test_lib2to3.pyc
989
B
-rw-r--r--
2025-11-12 17:55
test_lib2to3.pyo
989
B
-rw-r--r--
2025-11-12 17:55
test_linecache.py
3.98
KB
-rw-r--r--
2025-11-12 17:54
test_linecache.pyc
3.71
KB
-rw-r--r--
2025-11-12 17:55
test_linecache.pyo
3.71
KB
-rw-r--r--
2025-11-12 17:55
test_linuxaudiodev.py
3.1
KB
-rw-r--r--
2025-11-12 17:54
test_linuxaudiodev.pyc
3.71
KB
-rw-r--r--
2025-11-12 17:55
test_linuxaudiodev.pyo
3.71
KB
-rw-r--r--
2025-11-12 17:55
test_list.py
2.58
KB
-rw-r--r--
2025-11-12 17:54
test_list.pyc
3.1
KB
-rw-r--r--
2025-11-12 17:55
test_list.pyo
3.1
KB
-rw-r--r--
2025-11-12 17:55
test_locale.py
15.45
KB
-rw-r--r--
2025-11-12 17:54
test_locale.pyc
18.25
KB
-rw-r--r--
2025-11-12 17:55
test_locale.pyo
18.25
KB
-rw-r--r--
2025-11-12 17:55
test_logging.py
60.55
KB
-rw-r--r--
2025-11-12 17:54
test_logging.pyc
47.42
KB
-rw-r--r--
2025-11-12 17:55
test_logging.pyo
47.42
KB
-rw-r--r--
2025-11-12 17:55
test_long.py
36.4
KB
-rw-r--r--
2025-11-12 17:54
test_long.pyc
43.9
KB
-rw-r--r--
2025-11-12 17:55
test_long.pyo
43.71
KB
-rw-r--r--
2025-11-12 17:55
test_long_future.py
8.81
KB
-rw-r--r--
2025-11-12 17:54
test_long_future.pyc
12.05
KB
-rw-r--r--
2025-11-12 17:55
test_long_future.pyo
12.05
KB
-rw-r--r--
2025-11-12 17:55
test_longexp.py
318
B
-rw-r--r--
2025-11-12 17:54
test_longexp.pyc
918
B
-rw-r--r--
2025-11-12 17:55
test_longexp.pyo
918
B
-rw-r--r--
2025-11-12 17:55
test_macos.py
2.6
KB
-rw-r--r--
2025-11-12 17:54
test_macos.pyc
2.75
KB
-rw-r--r--
2025-11-12 17:55
test_macos.pyo
2.75
KB
-rw-r--r--
2025-11-12 17:55
test_macostools.py
2.89
KB
-rw-r--r--
2025-11-12 17:54
test_macostools.pyc
3.49
KB
-rw-r--r--
2025-11-12 17:55
test_macostools.pyo
3.49
KB
-rw-r--r--
2025-11-12 17:55
test_macpath.py
1.95
KB
-rw-r--r--
2025-11-12 17:54
test_macpath.pyc
3.06
KB
-rw-r--r--
2025-11-12 17:55
test_macpath.pyo
3.06
KB
-rw-r--r--
2025-11-12 17:55
test_mailbox.py
84.51
KB
-rw-r--r--
2025-11-12 17:54
test_mailbox.pyc
84.79
KB
-rw-r--r--
2025-11-12 17:55
test_mailbox.pyo
84.79
KB
-rw-r--r--
2025-11-12 17:55
test_marshal.py
12.2
KB
-rw-r--r--
2025-11-12 17:54
test_marshal.pyc
13.6
KB
-rw-r--r--
2025-11-12 17:55
test_marshal.pyo
13.6
KB
-rw-r--r--
2025-11-12 17:55
test_math.py
43.2
KB
-rw-r--r--
2025-11-12 17:54
test_math.pyc
38.71
KB
-rw-r--r--
2025-11-12 17:55
test_math.pyo
38.71
KB
-rw-r--r--
2025-11-12 17:55
test_md5.py
1.75
KB
-rw-r--r--
2025-11-12 17:54
test_md5.pyc
2.74
KB
-rw-r--r--
2025-11-12 17:55
test_md5.pyo
2.74
KB
-rw-r--r--
2025-11-12 17:55
test_memoryio.py
25.46
KB
-rw-r--r--
2025-11-12 17:54
test_memoryio.pyc
27.06
KB
-rw-r--r--
2025-11-12 17:55
test_memoryio.pyo
27.06
KB
-rw-r--r--
2025-11-12 17:55
test_memoryview.py
11.53
KB
-rw-r--r--
2025-11-12 17:54
test_memoryview.pyc
12.71
KB
-rw-r--r--
2025-11-12 17:55
test_memoryview.pyo
12.71
KB
-rw-r--r--
2025-11-12 17:55
test_mhlib.py
10.88
KB
-rw-r--r--
2025-11-12 17:54
test_mhlib.pyc
11.5
KB
-rw-r--r--
2025-11-12 17:55
test_mhlib.pyo
11.5
KB
-rw-r--r--
2025-11-12 17:55
test_mimetools.py
1.74
KB
-rw-r--r--
2025-11-12 17:54
test_mimetools.pyc
2.5
KB
-rw-r--r--
2025-11-12 17:55
test_mimetools.pyo
2.5
KB
-rw-r--r--
2025-11-12 17:55
test_mimetypes.py
3.53
KB
-rw-r--r--
2025-11-12 17:54
test_mimetypes.pyc
4.54
KB
-rw-r--r--
2025-11-12 17:55
test_mimetypes.pyo
4.54
KB
-rw-r--r--
2025-11-12 17:55
test_minidom.py
61.11
KB
-rw-r--r--
2025-11-12 17:54
test_minidom.pyc
55.47
KB
-rw-r--r--
2025-11-12 17:55
test_minidom.pyo
55.47
KB
-rw-r--r--
2025-11-12 17:55
test_mmap.py
24.4
KB
-rw-r--r--
2025-11-12 17:54
test_mmap.pyc
20.38
KB
-rw-r--r--
2025-11-12 17:55
test_mmap.pyo
20.33
KB
-rw-r--r--
2025-11-12 17:55
test_module.py
2.69
KB
-rw-r--r--
2025-11-12 17:54
test_module.pyc
3.31
KB
-rw-r--r--
2025-11-12 17:55
test_module.pyo
3.31
KB
-rw-r--r--
2025-11-12 17:55
test_modulefinder.py
7.87
KB
-rw-r--r--
2025-11-12 17:54
test_modulefinder.pyc
7.83
KB
-rw-r--r--
2025-11-12 17:55
test_modulefinder.pyo
7.83
KB
-rw-r--r--
2025-11-12 17:55
test_msilib.py
1.43
KB
-rw-r--r--
2025-11-12 17:54
test_msilib.pyc
1.92
KB
-rw-r--r--
2025-11-12 17:55
test_msilib.pyo
1.92
KB
-rw-r--r--
2025-11-12 17:55
test_multibytecodec.py
10.61
KB
-rw-r--r--
2025-11-12 17:54
test_multibytecodec.pyc
11.97
KB
-rw-r--r--
2025-11-12 17:55
test_multibytecodec.pyo
11.97
KB
-rw-r--r--
2025-11-12 17:55
test_multibytecodec_support.py
14.19
KB
-rw-r--r--
2025-11-12 17:54
test_multibytecodec_support.pyc
15.35
KB
-rw-r--r--
2025-11-12 17:55
test_multibytecodec_support.pyo
15.35
KB
-rw-r--r--
2025-11-12 17:55
test_multifile.py
1.66
KB
-rw-r--r--
2025-11-12 17:54
test_multifile.pyc
2.03
KB
-rw-r--r--
2025-11-12 17:55
test_multifile.pyo
1.96
KB
-rw-r--r--
2025-11-12 17:55
test_multiprocessing.py
76.8
KB
-rw-r--r--
2025-11-12 17:54
test_multiprocessing.pyc
81.16
KB
-rw-r--r--
2025-11-12 17:55
test_multiprocessing.pyo
81.08
KB
-rw-r--r--
2025-11-12 17:55
test_mutants.py
8.3
KB
-rw-r--r--
2025-11-12 17:54
test_mutants.pyc
6.46
KB
-rw-r--r--
2025-11-12 17:55
test_mutants.pyo
6.46
KB
-rw-r--r--
2025-11-12 17:55
test_mutex.py
999
B
-rw-r--r--
2025-11-12 17:54
test_mutex.pyc
1.7
KB
-rw-r--r--
2025-11-12 17:55
test_mutex.pyo
1.7
KB
-rw-r--r--
2025-11-12 17:55
test_netrc.py
3.63
KB
-rw-r--r--
2025-11-12 17:54
test_netrc.pyc
5.67
KB
-rw-r--r--
2025-11-12 17:55
test_netrc.pyo
5.67
KB
-rw-r--r--
2025-11-12 17:55
test_new.py
5.91
KB
-rw-r--r--
2025-11-12 17:54
test_new.pyc
5.62
KB
-rw-r--r--
2025-11-12 17:55
test_new.pyo
5.62
KB
-rw-r--r--
2025-11-12 17:55
test_nis.py
1.31
KB
-rw-r--r--
2025-11-12 17:54
test_nis.pyc
1.33
KB
-rw-r--r--
2025-11-12 17:55
test_nis.pyo
1.33
KB
-rw-r--r--
2025-11-12 17:55
test_nntplib.py
1.44
KB
-rw-r--r--
2025-11-12 17:54
test_nntplib.pyc
2.76
KB
-rw-r--r--
2025-11-12 17:55
test_nntplib.pyo
2.76
KB
-rw-r--r--
2025-11-12 17:55
test_normalization.py
3.06
KB
-rw-r--r--
2025-11-12 17:54
test_normalization.pyc
4.02
KB
-rw-r--r--
2025-11-12 17:55
test_normalization.pyo
4.02
KB
-rw-r--r--
2025-11-12 17:55
test_ntpath.py
8.97
KB
-rw-r--r--
2025-11-12 17:54
test_ntpath.pyc
10.59
KB
-rw-r--r--
2025-11-12 17:55
test_ntpath.pyo
10.59
KB
-rw-r--r--
2025-11-12 17:55
test_old_mailbox.py
4.77
KB
-rw-r--r--
2025-11-12 17:54
test_old_mailbox.pyc
5.88
KB
-rw-r--r--
2025-11-12 17:55
test_old_mailbox.pyo
5.88
KB
-rw-r--r--
2025-11-12 17:55
test_opcodes.py
3.04
KB
-rw-r--r--
2025-11-12 17:54
test_opcodes.pyc
4.07
KB
-rw-r--r--
2025-11-12 17:55
test_opcodes.pyo
4.07
KB
-rw-r--r--
2025-11-12 17:55
test_openpty.py
699
B
-rw-r--r--
2025-11-12 17:54
test_openpty.pyc
1.22
KB
-rw-r--r--
2025-11-12 17:55
test_openpty.pyo
1.22
KB
-rw-r--r--
2025-11-12 17:55
test_operator.py
20.96
KB
-rw-r--r--
2025-11-12 17:54
test_operator.pyc
27.16
KB
-rw-r--r--
2025-11-12 17:55
test_operator.pyo
27.16
KB
-rw-r--r--
2025-11-12 17:55
test_optparse.py
60.66
KB
-rw-r--r--
2025-11-12 17:54
test_optparse.pyc
75.26
KB
-rw-r--r--
2025-11-12 17:55
test_optparse.pyo
75.26
KB
-rw-r--r--
2025-11-12 17:55
test_os.py
32.6
KB
-rw-r--r--
2025-11-12 17:54
test_os.pyc
30.04
KB
-rw-r--r--
2025-11-12 17:55
test_os.pyo
30.04
KB
-rw-r--r--
2025-11-12 17:55
test_ossaudiodev.py
5.95
KB
-rw-r--r--
2025-11-12 17:54
test_ossaudiodev.pyc
5.04
KB
-rw-r--r--
2025-11-12 17:55
test_ossaudiodev.pyo
5.04
KB
-rw-r--r--
2025-11-12 17:55
test_parser.py
21.81
KB
-rw-r--r--
2025-11-12 17:54
test_parser.pyc
22.67
KB
-rw-r--r--
2025-11-12 17:55
test_parser.pyo
22.67
KB
-rw-r--r--
2025-11-12 17:55
test_pdb.py
10.96
KB
-rw-r--r--
2025-11-12 17:54
test_pdb.pyc
12.53
KB
-rw-r--r--
2025-11-12 17:55
test_pdb.pyo
12.53
KB
-rw-r--r--
2025-11-12 17:55
test_peepholer.py
8.64
KB
-rw-r--r--
2025-11-12 17:54
test_peepholer.pyc
9.77
KB
-rw-r--r--
2025-11-12 17:55
test_peepholer.pyo
9.77
KB
-rw-r--r--
2025-11-12 17:55
test_pep247.py
1.99
KB
-rw-r--r--
2025-11-12 17:54
test_pep247.pyc
2.48
KB
-rw-r--r--
2025-11-12 17:55
test_pep247.pyo
2.48
KB
-rw-r--r--
2025-11-12 17:55
test_pep263.py
1.34
KB
-rw-r--r--
2025-11-12 17:54
test_pep263.pyc
1.77
KB
-rw-r--r--
2025-11-12 17:55
test_pep263.pyo
1.77
KB
-rw-r--r--
2025-11-12 17:55
test_pep277.py
7.69
KB
-rw-r--r--
2025-11-12 17:54
test_pep277.pyc
7.24
KB
-rw-r--r--
2025-11-12 17:55
test_pep277.pyo
7.24
KB
-rw-r--r--
2025-11-12 17:55
test_pep292.py
7.5
KB
-rw-r--r--
2025-11-12 17:54
test_pep292.pyc
9.49
KB
-rw-r--r--
2025-11-12 17:55
test_pep292.pyo
9.49
KB
-rw-r--r--
2025-11-12 17:55
test_pep352.py
8.83
KB
-rw-r--r--
2025-11-12 17:54
test_pep352.pyc
8.83
KB
-rw-r--r--
2025-11-12 17:55
test_pep352.pyo
8.83
KB
-rw-r--r--
2025-11-12 17:55
test_pickle.py
2.3
KB
-rw-r--r--
2025-11-12 17:54
test_pickle.pyc
4.25
KB
-rw-r--r--
2025-11-12 17:55
test_pickle.pyo
4.25
KB
-rw-r--r--
2025-11-12 17:55
test_pickletools.py
611
B
-rw-r--r--
2025-11-12 17:54
test_pickletools.pyc
1.27
KB
-rw-r--r--
2025-11-12 17:55
test_pickletools.pyo
1.27
KB
-rw-r--r--
2025-11-12 17:55
test_pipes.py
6.83
KB
-rw-r--r--
2025-11-12 17:54
test_pipes.pyc
7.21
KB
-rw-r--r--
2025-11-12 17:55
test_pipes.pyo
7.21
KB
-rw-r--r--
2025-11-12 17:55
test_pkg.py
9.25
KB
-rw-r--r--
2025-11-12 17:54
test_pkg.pyc
9.17
KB
-rw-r--r--
2025-11-12 17:55
test_pkg.pyo
9.17
KB
-rw-r--r--
2025-11-12 17:55
test_pkgimport.py
2.81
KB
-rw-r--r--
2025-11-12 17:54
test_pkgimport.pyc
3.41
KB
-rw-r--r--
2025-11-12 17:55
test_pkgimport.pyo
3.41
KB
-rw-r--r--
2025-11-12 17:55
test_pkgutil.py
4.54
KB
-rw-r--r--
2025-11-12 17:54
test_pkgutil.pyc
5.45
KB
-rw-r--r--
2025-11-12 17:55
test_pkgutil.pyo
5.45
KB
-rw-r--r--
2025-11-12 17:55
test_platform.py
9.49
KB
-rw-r--r--
2025-11-12 17:54
test_platform.pyc
10.63
KB
-rw-r--r--
2025-11-12 17:55
test_platform.pyo
10.63
KB
-rw-r--r--
2025-11-12 17:55
test_plistlib.py
7.79
KB
-rw-r--r--
2025-11-12 17:54
test_plistlib.pyc
9.15
KB
-rw-r--r--
2025-11-12 17:55
test_plistlib.pyo
9.15
KB
-rw-r--r--
2025-11-12 17:55
test_poll.py
4.88
KB
-rw-r--r--
2025-11-12 17:54
test_poll.pyc
4.97
KB
-rw-r--r--
2025-11-12 17:55
test_poll.pyo
4.97
KB
-rw-r--r--
2025-11-12 17:55
test_popen.py
1.59
KB
-rw-r--r--
2025-11-12 17:54
test_popen.pyc
1.99
KB
-rw-r--r--
2025-11-12 17:55
test_popen.pyo
1.99
KB
-rw-r--r--
2025-11-12 17:55
test_popen2.py
4.24
KB
-rw-r--r--
2025-11-12 17:54
test_popen2.pyc
4.46
KB
-rw-r--r--
2025-11-12 17:55
test_popen2.pyo
4.46
KB
-rw-r--r--
2025-11-12 17:55
test_poplib.py
10.61
KB
-rw-r--r--
2025-11-12 17:54
test_poplib.pyc
15.67
KB
-rw-r--r--
2025-11-12 17:55
test_poplib.pyo
15.61
KB
-rw-r--r--
2025-11-12 17:55
test_posix.py
20.64
KB
-rw-r--r--
2025-11-12 17:54
test_posix.pyc
19.38
KB
-rw-r--r--
2025-11-12 17:55
test_posix.pyo
19.38
KB
-rw-r--r--
2025-11-12 17:55
test_posixpath.py
17.3
KB
-rw-r--r--
2025-11-12 17:54
test_posixpath.pyc
14.3
KB
-rw-r--r--
2025-11-12 17:55
test_posixpath.pyo
14.3
KB
-rw-r--r--
2025-11-12 17:55
test_pow.py
4.51
KB
-rw-r--r--
2025-11-12 17:54
test_pow.pyc
4.67
KB
-rw-r--r--
2025-11-12 17:55
test_pow.pyo
4.67
KB
-rw-r--r--
2025-11-12 17:55
test_pprint.py
24.11
KB
-rw-r--r--
2025-11-12 17:54
test_pprint.pyc
24.15
KB
-rw-r--r--
2025-11-12 17:55
test_pprint.pyo
24.15
KB
-rw-r--r--
2025-11-12 17:55
test_print.py
4.68
KB
-rw-r--r--
2025-11-12 17:54
test_print.pyc
5.95
KB
-rw-r--r--
2025-11-12 17:55
test_print.pyo
5.95
KB
-rw-r--r--
2025-11-12 17:55
test_profile.py
7.84
KB
-rw-r--r--
2025-11-12 17:54
test_profile.pyc
8.33
KB
-rw-r--r--
2025-11-12 17:55
test_profile.pyo
8.33
KB
-rw-r--r--
2025-11-12 17:55
test_property.py
6.77
KB
-rw-r--r--
2025-11-12 17:54
test_property.pyc
11.66
KB
-rw-r--r--
2025-11-12 17:55
test_property.pyo
11.66
KB
-rw-r--r--
2025-11-12 17:55
test_pstats.py
959
B
-rw-r--r--
2025-11-12 17:54
test_pstats.pyc
1.41
KB
-rw-r--r--
2025-11-12 17:55
test_pstats.pyo
1.41
KB
-rw-r--r--
2025-11-12 17:55
test_pty.py
11.43
KB
-rw-r--r--
2025-11-12 17:54
test_pty.pyc
8.21
KB
-rw-r--r--
2025-11-12 17:55
test_pty.pyo
8.21
KB
-rw-r--r--
2025-11-12 17:55
test_pwd.py
4.01
KB
-rw-r--r--
2025-11-12 17:54
test_pwd.pyc
2.93
KB
-rw-r--r--
2025-11-12 17:55
test_pwd.pyo
2.93
KB
-rw-r--r--
2025-11-12 17:55
test_py3kwarn.py
17.91
KB
-rw-r--r--
2025-11-12 17:54
test_py3kwarn.pyc
22.41
KB
-rw-r--r--
2025-11-12 17:55
test_py3kwarn.pyo
22.41
KB
-rw-r--r--
2025-11-12 17:55
test_py_compile.py
1.7
KB
-rw-r--r--
2025-11-12 17:54
test_py_compile.pyc
2.4
KB
-rw-r--r--
2025-11-12 17:55
test_py_compile.pyo
2.4
KB
-rw-r--r--
2025-11-12 17:55
test_pyclbr.py
7.71
KB
-rw-r--r--
2025-11-12 17:54
test_pyclbr.pyc
6.81
KB
-rw-r--r--
2025-11-12 17:55
test_pyclbr.pyo
6.81
KB
-rw-r--r--
2025-11-12 17:55
test_pydoc.py
15.29
KB
-rw-r--r--
2025-11-12 17:54
test_pydoc.pyc
17.49
KB
-rw-r--r--
2025-11-12 17:55
test_pydoc.pyo
17.49
KB
-rw-r--r--
2025-11-12 17:55
test_pyexpat.py
24.42
KB
-rw-r--r--
2025-11-12 17:54
test_pyexpat.pyc
28.65
KB
-rw-r--r--
2025-11-12 17:55
test_pyexpat.pyo
28.65
KB
-rw-r--r--
2025-11-12 17:55
test_queue.py
11.69
KB
-rw-r--r--
2025-11-12 17:54
test_queue.pyc
10.03
KB
-rw-r--r--
2025-11-12 17:55
test_queue.pyo
10.03
KB
-rw-r--r--
2025-11-12 17:55
test_quopri.py
7.31
KB
-rw-r--r--
2025-11-12 17:54
test_quopri.pyc
7.96
KB
-rw-r--r--
2025-11-12 17:55
test_quopri.pyo
7.96
KB
-rw-r--r--
2025-11-12 17:55
test_random.py
23.96
KB
-rw-r--r--
2025-11-12 17:54
test_random.pyc
24.04
KB
-rw-r--r--
2025-11-12 17:55
test_random.pyo
24.04
KB
-rw-r--r--
2025-11-12 17:55
test_re.py
46.42
KB
-rw-r--r--
2025-11-12 17:54
test_re.pyc
43.16
KB
-rw-r--r--
2025-11-12 17:55
test_re.pyo
43.16
KB
-rw-r--r--
2025-11-12 17:55
test_readline.py
2.36
KB
-rw-r--r--
2025-11-12 17:54
test_readline.pyc
2.57
KB
-rw-r--r--
2025-11-12 17:55
test_readline.pyo
2.57
KB
-rw-r--r--
2025-11-12 17:55
test_repr.py
12.06
KB
-rw-r--r--
2025-11-12 17:54
test_repr.pyc
14.7
KB
-rw-r--r--
2025-11-12 17:55
test_repr.pyo
14.7
KB
-rw-r--r--
2025-11-12 17:55
test_resource.py
4.9
KB
-rw-r--r--
2025-11-12 17:54
test_resource.pyc
3.88
KB
-rw-r--r--
2025-11-12 17:55
test_resource.pyo
3.88
KB
-rw-r--r--
2025-11-12 17:55
test_rfc822.py
9.02
KB
-rw-r--r--
2025-11-12 17:54
test_rfc822.pyc
9.36
KB
-rw-r--r--
2025-11-12 17:55
test_rfc822.pyo
9.36
KB
-rw-r--r--
2025-11-12 17:55
test_richcmp.py
11.2
KB
-rw-r--r--
2025-11-12 17:54
test_richcmp.pyc
15.97
KB
-rw-r--r--
2025-11-12 17:55
test_richcmp.pyo
15.97
KB
-rw-r--r--
2025-11-12 17:55
test_rlcompleter.py
2.78
KB
-rw-r--r--
2025-11-12 17:54
test_rlcompleter.pyc
3.35
KB
-rw-r--r--
2025-11-12 17:55
test_rlcompleter.pyo
3.35
KB
-rw-r--r--
2025-11-12 17:55
test_robotparser.py
6.39
KB
-rw-r--r--
2025-11-12 17:54
test_robotparser.pyc
5.99
KB
-rw-r--r--
2025-11-12 17:55
test_robotparser.pyo
5.99
KB
-rw-r--r--
2025-11-12 17:55
test_runpy.py
16
KB
-rw-r--r--
2025-11-12 17:54
test_runpy.pyc
15.18
KB
-rw-r--r--
2025-11-12 17:55
test_runpy.pyo
15.18
KB
-rw-r--r--
2025-11-12 17:55
test_sax.py
29.9
KB
-rw-r--r--
2025-11-12 17:54
test_sax.pyc
30.48
KB
-rw-r--r--
2025-11-12 17:55
test_sax.pyo
30.48
KB
-rw-r--r--
2025-11-12 17:55
test_scope.py
15.17
KB
-rw-r--r--
2025-11-12 17:54
test_scope.pyc
24.83
KB
-rw-r--r--
2025-11-12 17:55
test_scope.pyo
24.83
KB
-rw-r--r--
2025-11-12 17:55
test_scriptpackages.py
1.36
KB
-rw-r--r--
2025-11-12 17:54
test_scriptpackages.pyc
2.53
KB
-rw-r--r--
2025-11-12 17:55
test_scriptpackages.pyo
2.53
KB
-rw-r--r--
2025-11-12 17:55
test_select.py
2.11
KB
-rw-r--r--
2025-11-12 17:54
test_select.pyc
3.41
KB
-rw-r--r--
2025-11-12 17:55
test_select.pyo
3.41
KB
-rw-r--r--
2025-11-12 17:55
test_set.py
61.44
KB
-rw-r--r--
2025-11-12 17:54
test_set.pyc
85.37
KB
-rw-r--r--
2025-11-12 17:55
test_set.pyo
85.37
KB
-rw-r--r--
2025-11-12 17:55
test_setcomps.py
3.76
KB
-rw-r--r--
2025-11-12 17:54
test_setcomps.pyc
3.99
KB
-rw-r--r--
2025-11-12 17:55
test_setcomps.pyo
3.99
KB
-rw-r--r--
2025-11-12 17:55
test_sets.py
27.2
KB
-rw-r--r--
2025-11-12 17:54
test_sets.pyc
41.03
KB
-rw-r--r--
2025-11-12 17:55
test_sets.pyo
41.03
KB
-rw-r--r--
2025-11-12 17:55
test_sgmllib.py
15.36
KB
-rw-r--r--
2025-11-12 17:54
test_sgmllib.pyc
18.31
KB
-rw-r--r--
2025-11-12 17:55
test_sgmllib.pyo
18.31
KB
-rw-r--r--
2025-11-12 17:55
test_sha.py
1.66
KB
-rw-r--r--
2025-11-12 17:54
test_sha.pyc
2.14
KB
-rw-r--r--
2025-11-12 17:55
test_sha.pyo
2.14
KB
-rw-r--r--
2025-11-12 17:55
test_shelve.py
4.49
KB
-rw-r--r--
2025-11-12 17:54
test_shelve.pyc
6.87
KB
-rw-r--r--
2025-11-12 17:55
test_shelve.pyo
6.87
KB
-rw-r--r--
2025-11-12 17:55
test_shlex.py
5.18
KB
-rw-r--r--
2025-11-12 17:54
test_shlex.pyc
5.85
KB
-rw-r--r--
2025-11-12 17:55
test_shlex.pyo
5.85
KB
-rw-r--r--
2025-11-12 17:55
test_shutil.py
30.92
KB
-rw-r--r--
2025-11-12 17:54
test_shutil.pyc
28.4
KB
-rw-r--r--
2025-11-12 17:55
test_shutil.pyo
28.3
KB
-rw-r--r--
2025-11-12 17:55
test_signal.py
18.46
KB
-rw-r--r--
2025-11-12 17:54
test_signal.pyc
16.86
KB
-rw-r--r--
2025-11-12 17:55
test_signal.pyo
16.86
KB
-rw-r--r--
2025-11-12 17:55
test_site.py
15.36
KB
-rw-r--r--
2025-11-12 17:54
test_site.py.lib64
15.19
KB
-rw-r--r--
2025-11-12 17:54
test_site.pyc
14.35
KB
-rw-r--r--
2025-11-12 17:55
test_site.pyo
14.35
KB
-rw-r--r--
2025-11-12 17:55
test_slice.py
4.31
KB
-rw-r--r--
2025-11-12 17:54
test_slice.pyc
5.87
KB
-rw-r--r--
2025-11-12 17:55
test_slice.pyo
5.87
KB
-rw-r--r--
2025-11-12 17:55
test_smtplib.py
18.87
KB
-rw-r--r--
2025-11-12 17:54
test_smtplib.pyc
20.3
KB
-rw-r--r--
2025-11-12 17:55
test_smtplib.pyo
20.3
KB
-rw-r--r--
2025-11-12 17:55
test_smtpnet.py
842
B
-rw-r--r--
2025-11-12 17:54
test_smtpnet.pyc
1.39
KB
-rw-r--r--
2025-11-12 17:55
test_smtpnet.pyo
1.39
KB
-rw-r--r--
2025-11-12 17:55
test_socket.py
58.99
KB
-rw-r--r--
2025-11-12 17:54
test_socket.pyc
70.11
KB
-rw-r--r--
2025-11-12 17:55
test_socket.pyo
70.11
KB
-rw-r--r--
2025-11-12 17:55
test_socketserver.py
10.58
KB
-rw-r--r--
2025-11-12 17:54
test_socketserver.pyc
11.25
KB
-rw-r--r--
2025-11-12 17:55
test_socketserver.pyo
11.25
KB
-rw-r--r--
2025-11-12 17:55
test_softspace.py
640
B
-rw-r--r--
2025-11-12 17:54
test_softspace.pyc
1.32
KB
-rw-r--r--
2025-11-12 17:55
test_softspace.pyo
1.32
KB
-rw-r--r--
2025-11-12 17:55
test_sort.py
9.24
KB
-rw-r--r--
2025-11-12 17:54
test_sort.pyc
12.42
KB
-rw-r--r--
2025-11-12 17:55
test_sort.pyo
12.42
KB
-rw-r--r--
2025-11-12 17:55
test_sqlite.py
583
B
-rw-r--r--
2025-11-12 17:54
test_sqlite.pyc
841
B
-rw-r--r--
2025-11-12 17:55
test_sqlite.pyo
841
B
-rw-r--r--
2025-11-12 17:55
test_ssl.py
143.47
KB
-rw-r--r--
2025-11-12 17:54
test_ssl.pyc
109.64
KB
-rw-r--r--
2025-11-12 17:55
test_ssl.pyo
109.64
KB
-rw-r--r--
2025-11-12 17:55
test_startfile.py
1.39
KB
-rw-r--r--
2025-11-12 17:54
test_startfile.pyc
1.81
KB
-rw-r--r--
2025-11-12 17:55
test_startfile.pyo
1.81
KB
-rw-r--r--
2025-11-12 17:55
test_str.py
18.46
KB
-rw-r--r--
2025-11-12 17:54
test_str.pyc
20.95
KB
-rw-r--r--
2025-11-12 17:55
test_str.pyo
20.95
KB
-rw-r--r--
2025-11-12 17:55
test_strftime.py
6.79
KB
-rw-r--r--
2025-11-12 17:54
test_strftime.pyc
7.16
KB
-rw-r--r--
2025-11-12 17:55
test_strftime.pyo
7.16
KB
-rw-r--r--
2025-11-12 17:55
test_string.py
8.94
KB
-rw-r--r--
2025-11-12 17:54
test_string.pyc
9.85
KB
-rw-r--r--
2025-11-12 17:55
test_string.pyo
9.85
KB
-rw-r--r--
2025-11-12 17:55
test_stringprep.py
3.17
KB
-rw-r--r--
2025-11-12 17:54
test_stringprep.pyc
2.12
KB
-rw-r--r--
2025-11-12 17:55
test_stringprep.pyo
2.12
KB
-rw-r--r--
2025-11-12 17:55
test_strop.py
6.22
KB
-rw-r--r--
2025-11-12 17:54
test_strop.pyc
7.95
KB
-rw-r--r--
2025-11-12 17:55
test_strop.pyo
7.95
KB
-rw-r--r--
2025-11-12 17:55
test_strptime.py
25.24
KB
-rw-r--r--
2025-11-12 17:54
test_strptime.pyc
23.68
KB
-rw-r--r--
2025-11-12 17:55
test_strptime.pyo
23.68
KB
-rw-r--r--
2025-11-12 17:55
test_strtod.py
18.53
KB
-rw-r--r--
2025-11-12 17:54
test_strtod.pyc
14.03
KB
-rw-r--r--
2025-11-12 17:55
test_strtod.pyo
13.81
KB
-rw-r--r--
2025-11-12 17:55
test_struct.py
23.58
KB
-rw-r--r--
2025-11-12 17:54
test_struct.pyc
20.69
KB
-rw-r--r--
2025-11-12 17:55
test_struct.pyo
20.69
KB
-rw-r--r--
2025-11-12 17:55
test_structmembers.py
3.36
KB
-rw-r--r--
2025-11-12 17:54
test_structmembers.pyc
5.07
KB
-rw-r--r--
2025-11-12 17:55
test_structmembers.pyo
5.07
KB
-rw-r--r--
2025-11-12 17:55
test_structseq.py
3.6
KB
-rw-r--r--
2025-11-12 17:54
test_structseq.pyc
5.38
KB
-rw-r--r--
2025-11-12 17:55
test_structseq.pyo
5.38
KB
-rw-r--r--
2025-11-12 17:55
test_subprocess.py
57.32
KB
-rw-r--r--
2025-11-12 17:54
test_subprocess.pyc
51.93
KB
-rw-r--r--
2025-11-12 17:55
test_subprocess.pyo
51.93
KB
-rw-r--r--
2025-11-12 17:55
test_sunaudiodev.py
687
B
-rw-r--r--
2025-11-12 17:54
test_sunaudiodev.pyc
1.18
KB
-rw-r--r--
2025-11-12 17:55
test_sunaudiodev.pyo
1.18
KB
-rw-r--r--
2025-11-12 17:55
test_sundry.py
3.02
KB
-rw-r--r--
2025-11-12 17:54
test_sundry.pyc
3.5
KB
-rw-r--r--
2025-11-12 17:55
test_sundry.pyo
3.5
KB
-rw-r--r--
2025-11-12 17:55
test_support.py
48.85
KB
-rw-r--r--
2025-11-12 17:54
test_support.pyc
48.08
KB
-rw-r--r--
2025-11-12 17:55
test_support.pyo
48.03
KB
-rw-r--r--
2025-11-12 17:55
test_symtable.py
6.16
KB
-rw-r--r--
2025-11-12 17:54
test_symtable.pyc
8.17
KB
-rw-r--r--
2025-11-12 17:55
test_symtable.pyo
8.17
KB
-rw-r--r--
2025-11-12 17:55
test_syntax.py
18.3
KB
-rw-r--r--
2025-11-12 17:54
test_syntax.pyc
19.69
KB
-rw-r--r--
2025-11-12 17:55
test_syntax.pyo
19.69
KB
-rw-r--r--
2025-11-12 17:55
test_sys.py
28.5
KB
-rw-r--r--
2025-11-12 17:54
test_sys.pyc
25.02
KB
-rw-r--r--
2025-11-12 17:55
test_sys.pyo
25.02
KB
-rw-r--r--
2025-11-12 17:55
test_sys_setprofile.py
11.11
KB
-rw-r--r--
2025-11-12 17:54
test_sys_setprofile.pyc
16.55
KB
-rw-r--r--
2025-11-12 17:55
test_sys_setprofile.pyo
16.55
KB
-rw-r--r--
2025-11-12 17:55
test_sys_settrace.py
23.44
KB
-rw-r--r--
2025-11-12 17:54
test_sys_settrace.pyc
30.56
KB
-rw-r--r--
2025-11-12 17:55
test_sys_settrace.pyo
30.48
KB
-rw-r--r--
2025-11-12 17:55
test_sysconfig.py
12.34
KB
-rw-r--r--
2025-11-12 17:54
test_sysconfig.pyc
10.63
KB
-rw-r--r--
2025-11-12 17:55
test_sysconfig.pyo
10.63
KB
-rw-r--r--
2025-11-12 17:55
test_tarfile.py
64.06
KB
-rw-r--r--
2025-11-12 17:54
test_tarfile.pyc
67.45
KB
-rw-r--r--
2025-11-12 17:55
test_tarfile.pyo
67.45
KB
-rw-r--r--
2025-11-12 17:55
test_tcl.py
5.76
KB
-rw-r--r--
2025-11-12 17:54
test_tcl.pyc
8.28
KB
-rw-r--r--
2025-11-12 17:55
test_tcl.pyo
8.28
KB
-rw-r--r--
2025-11-12 17:55
test_telnetlib.py
15.41
KB
-rw-r--r--
2025-11-12 17:54
test_telnetlib.pyc
18.38
KB
-rw-r--r--
2025-11-12 17:55
test_telnetlib.pyo
18.38
KB
-rw-r--r--
2025-11-12 17:55
test_tempfile.py
30.04
KB
-rw-r--r--
2025-11-12 17:54
test_tempfile.pyc
30.6
KB
-rw-r--r--
2025-11-12 17:55
test_tempfile.pyo
30.6
KB
-rw-r--r--
2025-11-12 17:55
test_textwrap.py
24.96
KB
-rw-r--r--
2025-11-12 17:54
test_textwrap.pyc
21.34
KB
-rw-r--r--
2025-11-12 17:55
test_textwrap.pyo
21.34
KB
-rw-r--r--
2025-11-12 17:55
test_thread.py
8.48
KB
-rw-r--r--
2025-11-12 17:54
test_thread.pyc
9.4
KB
-rw-r--r--
2025-11-12 17:55
test_thread.pyo
9.4
KB
-rw-r--r--
2025-11-12 17:55
test_threaded_import.py
2.52
KB
-rw-r--r--
2025-11-12 17:54
test_threaded_import.pyc
1.84
KB
-rw-r--r--
2025-11-12 17:55
test_threaded_import.pyo
1.84
KB
-rw-r--r--
2025-11-12 17:55
test_threadedtempfile.py
2.16
KB
-rw-r--r--
2025-11-12 17:54
test_threadedtempfile.pyc
2.95
KB
-rw-r--r--
2025-11-12 17:55
test_threadedtempfile.pyo
2.95
KB
-rw-r--r--
2025-11-12 17:55
test_threading.py
28.8
KB
-rw-r--r--
2025-11-12 17:54
test_threading.pyc
27.33
KB
-rw-r--r--
2025-11-12 17:55
test_threading.pyo
27.33
KB
-rw-r--r--
2025-11-12 17:55
test_threading_local.py
6.51
KB
-rw-r--r--
2025-11-12 17:54
test_threading_local.pyc
9.27
KB
-rw-r--r--
2025-11-12 17:55
test_threading_local.pyo
9.27
KB
-rw-r--r--
2025-11-12 17:55
test_threadsignals.py
2.92
KB
-rw-r--r--
2025-11-12 17:54
test_threadsignals.pyc
3.13
KB
-rw-r--r--
2025-11-12 17:55
test_threadsignals.pyo
3.13
KB
-rw-r--r--
2025-11-12 17:55
test_time.py
10.16
KB
-rw-r--r--
2025-11-12 17:54
test_time.pyc
8.26
KB
-rw-r--r--
2025-11-12 17:55
test_time.pyo
8.26
KB
-rw-r--r--
2025-11-12 17:55
test_timeout.py
6.8
KB
-rw-r--r--
2025-11-12 17:54
test_timeout.pyc
6.9
KB
-rw-r--r--
2025-11-12 17:55
test_timeout.pyo
6.9
KB
-rw-r--r--
2025-11-12 17:55
test_tk.py
886
B
-rw-r--r--
2025-11-12 17:54
test_tk.pyc
1.04
KB
-rw-r--r--
2025-11-12 17:55
test_tk.pyo
1.04
KB
-rw-r--r--
2025-11-12 17:55
test_tokenize.py
22.76
KB
-rw-r--r--
2025-11-12 17:54
test_tokenize.pyc
23.15
KB
-rw-r--r--
2025-11-12 17:55
test_tokenize.pyo
23.15
KB
-rw-r--r--
2025-11-12 17:55
test_tools.py
9.34
KB
-rw-r--r--
2025-11-12 17:54
test_tools.pyc
10.48
KB
-rw-r--r--
2025-11-12 17:55
test_tools.pyo
10.48
KB
-rw-r--r--
2025-11-12 17:55
test_trace.py
11.55
KB
-rw-r--r--
2025-11-12 17:54
test_trace.pyc
14.03
KB
-rw-r--r--
2025-11-12 17:55
test_trace.pyo
14.03
KB
-rw-r--r--
2025-11-12 17:55
test_traceback.py
7.41
KB
-rw-r--r--
2025-11-12 17:54
test_traceback.pyc
7.68
KB
-rw-r--r--
2025-11-12 17:55
test_traceback.pyo
7.68
KB
-rw-r--r--
2025-11-12 17:55
test_transformer.py
1.09
KB
-rw-r--r--
2025-11-12 17:54
test_transformer.pyc
1.53
KB
-rw-r--r--
2025-11-12 17:55
test_transformer.pyo
1.45
KB
-rw-r--r--
2025-11-12 17:55
test_ttk_guionly.py
1.18
KB
-rw-r--r--
2025-11-12 17:54
test_ttk_guionly.pyc
1.38
KB
-rw-r--r--
2025-11-12 17:55
test_ttk_guionly.pyo
1.38
KB
-rw-r--r--
2025-11-12 17:55
test_ttk_textonly.py
543
B
-rw-r--r--
2025-11-12 17:54
test_ttk_textonly.pyc
859
B
-rw-r--r--
2025-11-12 17:55
test_ttk_textonly.pyo
859
B
-rw-r--r--
2025-11-12 17:55
test_tuple.py
5.28
KB
-rw-r--r--
2025-11-12 17:54
test_tuple.pyc
7.22
KB
-rw-r--r--
2025-11-12 17:55
test_tuple.pyo
7.22
KB
-rw-r--r--
2025-11-12 17:55
test_typechecks.py
3.09
KB
-rw-r--r--
2025-11-12 17:54
test_typechecks.pyc
5.12
KB
-rw-r--r--
2025-11-12 17:55
test_typechecks.pyo
5.12
KB
-rw-r--r--
2025-11-12 17:55
test_types.py
29.03
KB
-rw-r--r--
2025-11-12 17:54
test_types.pyc
25.3
KB
-rw-r--r--
2025-11-12 17:55
test_types.pyo
25.07
KB
-rw-r--r--
2025-11-12 17:55
test_ucn.py
5.98
KB
-rw-r--r--
2025-11-12 17:54
test_ucn.pyc
6.14
KB
-rw-r--r--
2025-11-12 17:55
test_ucn.pyo
6.14
KB
-rw-r--r--
2025-11-12 17:55
test_unary.py
1.82
KB
-rw-r--r--
2025-11-12 17:54
test_unary.pyc
2.75
KB
-rw-r--r--
2025-11-12 17:55
test_unary.pyo
2.75
KB
-rw-r--r--
2025-11-12 17:55
test_undocumented_details.py
1.14
KB
-rw-r--r--
2025-11-12 17:54
test_undocumented_details.pyc
2.03
KB
-rw-r--r--
2025-11-12 17:55
test_undocumented_details.pyo
2.03
KB
-rw-r--r--
2025-11-12 17:55
test_unicode.py
77.72
KB
-rw-r--r--
2025-11-12 17:54
test_unicode.pyc
64.72
KB
-rw-r--r--
2025-11-12 17:55
test_unicode.pyo
64.72
KB
-rw-r--r--
2025-11-12 17:55
test_unicode_file.py
8.29
KB
-rw-r--r--
2025-11-12 17:54
test_unicode_file.pyc
5.76
KB
-rw-r--r--
2025-11-12 17:55
test_unicode_file.pyo
5.76
KB
-rw-r--r--
2025-11-12 17:55
test_unicodedata.py
11.8
KB
-rw-r--r--
2025-11-12 17:54
test_unicodedata.pyc
11.76
KB
-rw-r--r--
2025-11-12 17:55
test_unicodedata.pyo
11.76
KB
-rw-r--r--
2025-11-12 17:55
test_unittest.py
202
B
-rw-r--r--
2025-11-12 17:54
test_unittest.pyc
517
B
-rw-r--r--
2025-11-12 17:55
test_unittest.pyo
517
B
-rw-r--r--
2025-11-12 17:55
test_univnewlines.py
3.98
KB
-rw-r--r--
2025-11-12 17:54
test_univnewlines.pyc
5.33
KB
-rw-r--r--
2025-11-12 17:55
test_univnewlines.pyo
5.33
KB
-rw-r--r--
2025-11-12 17:55
test_univnewlines2k.py
3.76
KB
-rw-r--r--
2025-11-12 17:54
test_univnewlines2k.pyc
5.24
KB
-rw-r--r--
2025-11-12 17:55
test_univnewlines2k.pyo
5.24
KB
-rw-r--r--
2025-11-12 17:55
test_unpack.py
2.5
KB
-rw-r--r--
2025-11-12 17:54
test_unpack.pyc
2.79
KB
-rw-r--r--
2025-11-12 17:55
test_unpack.pyo
2.79
KB
-rw-r--r--
2025-11-12 17:55
test_urllib.py
38.18
KB
-rw-r--r--
2025-11-12 17:54
test_urllib.pyc
35.87
KB
-rw-r--r--
2025-11-12 17:55
test_urllib.pyo
35.83
KB
-rw-r--r--
2025-11-12 17:55
test_urllib2.py
55.86
KB
-rw-r--r--
2025-11-12 17:54
test_urllib2.pyc
54.43
KB
-rw-r--r--
2025-11-12 17:55
test_urllib2.pyo
54.26
KB
-rw-r--r--
2025-11-12 17:55
test_urllib2_localnet.py
22.75
KB
-rw-r--r--
2025-11-12 17:54
test_urllib2_localnet.pyc
22.76
KB
-rw-r--r--
2025-11-12 17:55
test_urllib2_localnet.pyo
22.69
KB
-rw-r--r--
2025-11-12 17:55
test_urllib2net.py
11.98
KB
-rw-r--r--
2025-11-12 17:54
test_urllib2net.pyc
10.01
KB
-rw-r--r--
2025-11-12 17:55
test_urllib2net.pyo
10.01
KB
-rw-r--r--
2025-11-12 17:55
test_urllibnet.py
7.66
KB
-rw-r--r--
2025-11-12 17:54
test_urllibnet.pyc
8.08
KB
-rw-r--r--
2025-11-12 17:55
test_urllibnet.pyo
8.08
KB
-rw-r--r--
2025-11-12 17:55
test_urlparse.py
34.48
KB
-rw-r--r--
2025-11-12 17:54
test_urlparse.pyc
27.76
KB
-rw-r--r--
2025-11-12 17:55
test_urlparse.pyo
27.76
KB
-rw-r--r--
2025-11-12 17:55
test_userdict.py
10.39
KB
-rw-r--r--
2025-11-12 17:54
test_userdict.pyc
10.25
KB
-rw-r--r--
2025-11-12 17:55
test_userdict.pyo
10.25
KB
-rw-r--r--
2025-11-12 17:55
test_userlist.py
1.85
KB
-rw-r--r--
2025-11-12 17:54
test_userlist.pyc
3.22
KB
-rw-r--r--
2025-11-12 17:55
test_userlist.pyo
3.22
KB
-rw-r--r--
2025-11-12 17:55
test_userstring.py
4.74
KB
-rwxr-xr-x
2025-11-12 17:54
test_userstring.pyc
5.24
KB
-rw-r--r--
2025-11-12 17:55
test_userstring.pyo
5.24
KB
-rw-r--r--
2025-11-12 17:55
test_uu.py
5.62
KB
-rw-r--r--
2025-11-12 17:54
test_uu.pyc
6.67
KB
-rw-r--r--
2025-11-12 17:55
test_uu.pyo
6.67
KB
-rw-r--r--
2025-11-12 17:55
test_uuid.py
20.29
KB
-rw-r--r--
2025-11-12 17:54
test_uuid.pyc
23.24
KB
-rw-r--r--
2025-11-12 17:55
test_uuid.pyo
23.24
KB
-rw-r--r--
2025-11-12 17:55
test_wait3.py
1.04
KB
-rw-r--r--
2025-11-12 17:54
test_wait3.pyc
1.52
KB
-rw-r--r--
2025-11-12 17:55
test_wait3.pyo
1.52
KB
-rw-r--r--
2025-11-12 17:55
test_wait4.py
940
B
-rw-r--r--
2025-11-12 17:54
test_wait4.pyc
1.33
KB
-rw-r--r--
2025-11-12 17:55
test_wait4.pyo
1.33
KB
-rw-r--r--
2025-11-12 17:55
test_warnings.py
31.51
KB
-rw-r--r--
2025-11-12 17:54
test_warnings.pyc
26.95
KB
-rw-r--r--
2025-11-12 17:55
test_warnings.pyo
26.93
KB
-rw-r--r--
2025-11-12 17:55
test_wave.py
1.12
KB
-rw-r--r--
2025-11-12 17:54
test_wave.pyc
1.88
KB
-rw-r--r--
2025-11-12 17:55
test_wave.pyo
1.88
KB
-rw-r--r--
2025-11-12 17:55
test_weakref.py
46.06
KB
-rw-r--r--
2025-11-12 17:54
test_weakref.pyc
47.82
KB
-rw-r--r--
2025-11-12 17:55
test_weakref.pyo
47.82
KB
-rw-r--r--
2025-11-12 17:55
test_weakset.py
15.14
KB
-rw-r--r--
2025-11-12 17:54
test_weakset.pyc
18.83
KB
-rw-r--r--
2025-11-12 17:55
test_weakset.pyo
18.83
KB
-rw-r--r--
2025-11-12 17:55
test_whichdb.py
1.76
KB
-rw-r--r--
2025-11-12 17:54
test_whichdb.pyc
2.21
KB
-rw-r--r--
2025-11-12 17:55
test_whichdb.pyo
2.21
KB
-rw-r--r--
2025-11-12 17:55
test_winreg.py
19.37
KB
-rw-r--r--
2025-11-12 17:54
test_winreg.pyc
14.53
KB
-rw-r--r--
2025-11-12 17:55
test_winreg.pyo
14.53
KB
-rw-r--r--
2025-11-12 17:55
test_winsound.py
8.96
KB
-rw-r--r--
2025-11-12 17:54
test_winsound.pyc
7.82
KB
-rw-r--r--
2025-11-12 17:55
test_winsound.pyo
7.82
KB
-rw-r--r--
2025-11-12 17:55
test_with.py
25.82
KB
-rw-r--r--
2025-11-12 17:54
test_with.pyc
34.27
KB
-rw-r--r--
2025-11-12 17:55
test_with.pyo
34.27
KB
-rw-r--r--
2025-11-12 17:55
test_wsgiref.py
18.67
KB
-rw-r--r--
2025-11-12 17:54
test_wsgiref.pyc
22.87
KB
-rw-r--r--
2025-11-12 17:55
test_wsgiref.pyo
22.87
KB
-rw-r--r--
2025-11-12 17:55
test_xdrlib.py
1.56
KB
-rw-r--r--
2025-11-12 17:54
test_xdrlib.pyc
2.03
KB
-rw-r--r--
2025-11-12 17:55
test_xdrlib.pyo
2.03
KB
-rw-r--r--
2025-11-12 17:55
test_xml_etree.py
52.78
KB
-rw-r--r--
2025-11-12 17:54
test_xml_etree.pyc
58.69
KB
-rw-r--r--
2025-11-12 17:55
test_xml_etree.pyo
58.61
KB
-rw-r--r--
2025-11-12 17:55
test_xml_etree_c.py
1.49
KB
-rw-r--r--
2025-11-12 17:54
test_xml_etree_c.pyc
1.81
KB
-rw-r--r--
2025-11-12 17:55
test_xml_etree_c.pyo
1.81
KB
-rw-r--r--
2025-11-12 17:55
test_xmllib.py
1.27
KB
-rw-r--r--
2025-11-12 17:54
test_xmllib.pyc
2.11
KB
-rw-r--r--
2025-11-12 17:55
test_xmllib.pyo
2.11
KB
-rw-r--r--
2025-11-12 17:55
test_xmlrpc.py
38.93
KB
-rw-r--r--
2025-11-12 17:54
test_xmlrpc.pyc
41.57
KB
-rw-r--r--
2025-11-12 17:55
test_xmlrpc.pyo
41.57
KB
-rw-r--r--
2025-11-12 17:55
test_xpickle.py
8.05
KB
-rw-r--r--
2025-11-12 17:54
test_xpickle.pyc
9.34
KB
-rw-r--r--
2025-11-12 17:55
test_xpickle.pyo
9.34
KB
-rw-r--r--
2025-11-12 17:55
test_xrange.py
7.64
KB
-rw-r--r--
2025-11-12 17:54
test_xrange.pyc
7
KB
-rw-r--r--
2025-11-12 17:55
test_xrange.pyo
7
KB
-rw-r--r--
2025-11-12 17:55
test_zipfile.py
59.61
KB
-rw-r--r--
2025-11-12 17:54
test_zipfile.pyc
58.41
KB
-rw-r--r--
2025-11-12 17:55
test_zipfile.pyo
58.41
KB
-rw-r--r--
2025-11-12 17:55
test_zipfile64.py
4.32
KB
-rw-r--r--
2025-11-12 17:54
test_zipfile64.pyc
4.23
KB
-rw-r--r--
2025-11-12 17:55
test_zipfile64.pyo
4.23
KB
-rw-r--r--
2025-11-12 17:55
test_zipimport.py
16.42
KB
-rw-r--r--
2025-11-12 17:54
test_zipimport.pyc
16.61
KB
-rw-r--r--
2025-11-12 17:55
test_zipimport.pyo
16.61
KB
-rw-r--r--
2025-11-12 17:55
test_zipimport_support.py
10.6
KB
-rw-r--r--
2025-11-12 17:54
test_zipimport_support.pyc
7.13
KB
-rw-r--r--
2025-11-12 17:55
test_zipimport_support.pyo
7.07
KB
-rw-r--r--
2025-11-12 17:55
test_zlib.py
21.8
KB
-rw-r--r--
2025-11-12 17:54
test_zlib.pyc
20.8
KB
-rw-r--r--
2025-11-12 17:55
test_zlib.pyo
20.8
KB
-rw-r--r--
2025-11-12 17:55
testall.py
274
B
-rw-r--r--
2025-11-12 17:54
testall.pyc
392
B
-rw-r--r--
2025-11-12 17:55
testall.pyo
392
B
-rw-r--r--
2025-11-12 17:55
testcodec.py
1.02
KB
-rw-r--r--
2025-11-12 17:54
testcodec.pyc
1.68
KB
-rw-r--r--
2025-11-12 17:55
testcodec.pyo
1.68
KB
-rw-r--r--
2025-11-12 17:55
testimg.uue
70.67
KB
-rw-r--r--
2025-11-12 17:54
testimgr.uue
70.67
KB
-rw-r--r--
2025-11-12 17:54
testrgb.uue
58.63
KB
-rw-r--r--
2025-11-12 17:54
testtar.tar
275
KB
-rw-r--r--
2025-11-12 17:54
tf_inherit_check.py
581
B
-rw-r--r--
2025-11-12 17:54
tf_inherit_check.pyc
542
B
-rw-r--r--
2025-11-12 17:55
tf_inherit_check.pyo
542
B
-rw-r--r--
2025-11-12 17:55
threaded_import_hangers.py
1.38
KB
-rw-r--r--
2025-11-12 17:54
threaded_import_hangers.pyc
1.22
KB
-rw-r--r--
2025-11-12 17:55
threaded_import_hangers.pyo
1.22
KB
-rw-r--r--
2025-11-12 17:55
time_hashlib.py
2.79
KB
-rw-r--r--
2025-11-12 17:54
time_hashlib.pyc
3.19
KB
-rw-r--r--
2025-11-12 17:55
time_hashlib.pyo
3.19
KB
-rw-r--r--
2025-11-12 17:55
tokenize_tests.txt
2.39
KB
-rw-r--r--
2025-11-12 17:54
warning_tests.py
240
B
-rw-r--r--
2025-11-12 17:54
warning_tests.pyc
535
B
-rw-r--r--
2025-11-12 17:55
warning_tests.pyo
535
B
-rw-r--r--
2025-11-12 17:55
win_console_handler.py
1.39
KB
-rw-r--r--
2025-11-12 17:54
win_console_handler.pyc
1.42
KB
-rw-r--r--
2025-11-12 17:55
win_console_handler.pyo
1.42
KB
-rw-r--r--
2025-11-12 17:55
xmltests.py
497
B
-rw-r--r--
2025-11-12 17:54
xmltests.pyc
753
B
-rw-r--r--
2025-11-12 17:55
xmltests.pyo
753
B
-rw-r--r--
2025-11-12 17:55
zipdir.zip
374
B
-rw-r--r--
2025-11-12 17:54
Save
Rename
import unittest from test import test_support import os import socket import StringIO import urllib2 from urllib2 import Request, OpenerDirector import httplib try: import ssl except ImportError: ssl = None from test.test_urllib import FakeHTTPMixin # XXX # Request # CacheFTPHandler (hard to write) # parse_keqv_list, parse_http_list, HTTPDigestAuthHandler class TrivialTests(unittest.TestCase): def test_trivial(self): # A couple trivial tests self.assertRaises(ValueError, urllib2.urlopen, 'bogus url') # XXX Name hacking to get this to work on Windows. fname = os.path.abspath(urllib2.__file__).replace('\\', '/') # And more hacking to get it to work on MacOS. This assumes # urllib.pathname2url works, unfortunately... if os.name == 'riscos': import string fname = os.expand(fname) fname = fname.translate(string.maketrans("/.", "./")) if os.name == 'nt': file_url = "file:///%s" % fname else: file_url = "file://%s" % fname f = urllib2.urlopen(file_url) buf = f.read() f.close() def test_parse_http_list(self): tests = [('a,b,c', ['a', 'b', 'c']), ('path"o,l"og"i"cal, example', ['path"o,l"og"i"cal', 'example']), ('a, b, "c", "d", "e,f", g, h', ['a', 'b', '"c"', '"d"', '"e,f"', 'g', 'h']), ('a="b\\"c", d="e\\,f", g="h\\\\i"', ['a="b"c"', 'd="e,f"', 'g="h\\i"'])] for string, list in tests: self.assertEqual(urllib2.parse_http_list(string), list) @unittest.skipUnless(ssl, "ssl module required") def test_cafile_and_context(self): context = ssl.create_default_context() with self.assertRaises(ValueError): urllib2.urlopen( "https://localhost", cafile="/nonexistent/path", context=context ) def test_request_headers_dict(): """ The Request.headers dictionary is not a documented interface. It should stay that way, because the complete set of headers are only accessible through the .get_header(), .has_header(), .header_items() interface. However, .headers pre-dates those methods, and so real code will be using the dictionary. The introduction in 2.4 of those methods was a mistake for the same reason: code that previously saw all (urllib2 user)-provided headers in .headers now sees only a subset (and the function interface is ugly and incomplete). A better change would have been to replace .headers dict with a dict subclass (or UserDict.DictMixin instance?) that preserved the .headers interface and also provided access to the "unredirected" headers. It's probably too late to fix that, though. Check .capitalize() case normalization: >>> url = "http://example.com" >>> Request(url, headers={"Spam-eggs": "blah"}).headers["Spam-eggs"] 'blah' >>> Request(url, headers={"spam-EggS": "blah"}).headers["Spam-eggs"] 'blah' Currently, Request(url, "Spam-eggs").headers["Spam-Eggs"] raises KeyError, but that could be changed in future. """ def test_request_headers_methods(): """ Note the case normalization of header names here, to .capitalize()-case. This should be preserved for backwards-compatibility. (In the HTTP case, normalization to .title()-case is done by urllib2 before sending headers to httplib). >>> url = "http://example.com" >>> r = Request(url, headers={"Spam-eggs": "blah"}) >>> r.has_header("Spam-eggs") True >>> r.header_items() [('Spam-eggs', 'blah')] >>> r.add_header("Foo-Bar", "baz") >>> items = r.header_items() >>> items.sort() >>> items [('Foo-bar', 'baz'), ('Spam-eggs', 'blah')] Note that e.g. r.has_header("spam-EggS") is currently False, and r.get_header("spam-EggS") returns None, but that could be changed in future. >>> r.has_header("Not-there") False >>> print r.get_header("Not-there") None >>> r.get_header("Not-there", "default") 'default' """ def test_password_manager(self): """ >>> mgr = urllib2.HTTPPasswordMgr() >>> add = mgr.add_password >>> add("Some Realm", "http://example.com/", "joe", "password") >>> add("Some Realm", "http://example.com/ni", "ni", "ni") >>> add("c", "http://example.com/foo", "foo", "ni") >>> add("c", "http://example.com/bar", "bar", "nini") >>> add("b", "http://example.com/", "first", "blah") >>> add("b", "http://example.com/", "second", "spam") >>> add("a", "http://example.com", "1", "a") >>> add("Some Realm", "http://c.example.com:3128", "3", "c") >>> add("Some Realm", "d.example.com", "4", "d") >>> add("Some Realm", "e.example.com:3128", "5", "e") >>> mgr.find_user_password("Some Realm", "example.com") ('joe', 'password') >>> mgr.find_user_password("Some Realm", "http://example.com") ('joe', 'password') >>> mgr.find_user_password("Some Realm", "http://example.com/") ('joe', 'password') >>> mgr.find_user_password("Some Realm", "http://example.com/spam") ('joe', 'password') >>> mgr.find_user_password("Some Realm", "http://example.com/spam/spam") ('joe', 'password') >>> mgr.find_user_password("c", "http://example.com/foo") ('foo', 'ni') >>> mgr.find_user_password("c", "http://example.com/bar") ('bar', 'nini') Actually, this is really undefined ATM ## Currently, we use the highest-level path where more than one match: ## >>> mgr.find_user_password("Some Realm", "http://example.com/ni") ## ('joe', 'password') Use latest add_password() in case of conflict: >>> mgr.find_user_password("b", "http://example.com/") ('second', 'spam') No special relationship between a.example.com and example.com: >>> mgr.find_user_password("a", "http://example.com/") ('1', 'a') >>> mgr.find_user_password("a", "http://a.example.com/") (None, None) Ports: >>> mgr.find_user_password("Some Realm", "c.example.com") (None, None) >>> mgr.find_user_password("Some Realm", "c.example.com:3128") ('3', 'c') >>> mgr.find_user_password("Some Realm", "http://c.example.com:3128") ('3', 'c') >>> mgr.find_user_password("Some Realm", "d.example.com") ('4', 'd') >>> mgr.find_user_password("Some Realm", "e.example.com:3128") ('5', 'e') """ pass def test_password_manager_default_port(self): """ >>> mgr = urllib2.HTTPPasswordMgr() >>> add = mgr.add_password The point to note here is that we can't guess the default port if there's no scheme. This applies to both add_password and find_user_password. >>> add("f", "http://g.example.com:80", "10", "j") >>> add("g", "http://h.example.com", "11", "k") >>> add("h", "i.example.com:80", "12", "l") >>> add("i", "j.example.com", "13", "m") >>> mgr.find_user_password("f", "g.example.com:100") (None, None) >>> mgr.find_user_password("f", "g.example.com:80") ('10', 'j') >>> mgr.find_user_password("f", "g.example.com") (None, None) >>> mgr.find_user_password("f", "http://g.example.com:100") (None, None) >>> mgr.find_user_password("f", "http://g.example.com:80") ('10', 'j') >>> mgr.find_user_password("f", "http://g.example.com") ('10', 'j') >>> mgr.find_user_password("g", "h.example.com") ('11', 'k') >>> mgr.find_user_password("g", "h.example.com:80") ('11', 'k') >>> mgr.find_user_password("g", "http://h.example.com:80") ('11', 'k') >>> mgr.find_user_password("h", "i.example.com") (None, None) >>> mgr.find_user_password("h", "i.example.com:80") ('12', 'l') >>> mgr.find_user_password("h", "http://i.example.com:80") ('12', 'l') >>> mgr.find_user_password("i", "j.example.com") ('13', 'm') >>> mgr.find_user_password("i", "j.example.com:80") (None, None) >>> mgr.find_user_password("i", "http://j.example.com") ('13', 'm') >>> mgr.find_user_password("i", "http://j.example.com:80") (None, None) """ class MockOpener: addheaders = [] def open(self, req, data=None,timeout=socket._GLOBAL_DEFAULT_TIMEOUT): self.req, self.data, self.timeout = req, data, timeout def error(self, proto, *args): self.proto, self.args = proto, args class MockFile: def read(self, count=None): pass def readline(self, count=None): pass def close(self): pass class MockHeaders(dict): def getheaders(self, name): return self.values() class MockResponse(StringIO.StringIO): def __init__(self, code, msg, headers, data, url=None): StringIO.StringIO.__init__(self, data) self.code, self.msg, self.headers, self.url = code, msg, headers, url def info(self): return self.headers def geturl(self): return self.url class MockCookieJar: def add_cookie_header(self, request): self.ach_req = request def extract_cookies(self, response, request): self.ec_req, self.ec_r = request, response class FakeMethod: def __init__(self, meth_name, action, handle): self.meth_name = meth_name self.handle = handle self.action = action def __call__(self, *args): return self.handle(self.meth_name, self.action, *args) class MockHTTPResponse: def __init__(self, fp, msg, status, reason): self.fp = fp self.msg = msg self.status = status self.reason = reason def read(self): return '' class MockHTTPClass: def __init__(self): self.req_headers = [] self.data = None self.raise_on_endheaders = False self._tunnel_headers = {} def __call__(self, host, timeout=socket._GLOBAL_DEFAULT_TIMEOUT): self.host = host self.timeout = timeout return self def set_debuglevel(self, level): self.level = level def set_tunnel(self, host, port=None, headers=None): self._tunnel_host = host self._tunnel_port = port if headers: self._tunnel_headers = headers else: self._tunnel_headers.clear() def request(self, method, url, body=None, headers=None): self.method = method self.selector = url if headers is not None: self.req_headers += headers.items() self.req_headers.sort() if body: self.data = body if self.raise_on_endheaders: import socket raise socket.error() def getresponse(self): return MockHTTPResponse(MockFile(), {}, 200, "OK") def close(self): pass class MockHandler: # useful for testing handler machinery # see add_ordered_mock_handlers() docstring handler_order = 500 def __init__(self, methods): self._define_methods(methods) def _define_methods(self, methods): for spec in methods: if len(spec) == 2: name, action = spec else: name, action = spec, None meth = FakeMethod(name, action, self.handle) setattr(self.__class__, name, meth) def handle(self, fn_name, action, *args, **kwds): self.parent.calls.append((self, fn_name, args, kwds)) if action is None: return None elif action == "return self": return self elif action == "return response": res = MockResponse(200, "OK", {}, "") return res elif action == "return request": return Request("http://blah/") elif action.startswith("error"): code = action[action.rfind(" ")+1:] try: code = int(code) except ValueError: pass res = MockResponse(200, "OK", {}, "") return self.parent.error("http", args[0], res, code, "", {}) elif action == "raise": raise urllib2.URLError("blah") assert False def close(self): pass def add_parent(self, parent): self.parent = parent self.parent.calls = [] def __lt__(self, other): if not hasattr(other, "handler_order"): # No handler_order, leave in original order. Yuck. return True return self.handler_order < other.handler_order def add_ordered_mock_handlers(opener, meth_spec): """Create MockHandlers and add them to an OpenerDirector. meth_spec: list of lists of tuples and strings defining methods to define on handlers. eg: [["http_error", "ftp_open"], ["http_open"]] defines methods .http_error() and .ftp_open() on one handler, and .http_open() on another. These methods just record their arguments and return None. Using a tuple instead of a string causes the method to perform some action (see MockHandler.handle()), eg: [["http_error"], [("http_open", "return request")]] defines .http_error() on one handler (which simply returns None), and .http_open() on another handler, which returns a Request object. """ handlers = [] count = 0 for meths in meth_spec: class MockHandlerSubclass(MockHandler): pass h = MockHandlerSubclass(meths) h.handler_order += count h.add_parent(opener) count = count + 1 handlers.append(h) opener.add_handler(h) return handlers def build_test_opener(*handler_instances): opener = OpenerDirector() for h in handler_instances: opener.add_handler(h) return opener class MockHTTPHandler(urllib2.BaseHandler): # useful for testing redirections and auth # sends supplied headers and code as first response # sends 200 OK as second response def __init__(self, code, headers): self.code = code self.headers = headers self.reset() def reset(self): self._count = 0 self.requests = [] def http_open(self, req): import mimetools, httplib, copy from StringIO import StringIO self.requests.append(copy.deepcopy(req)) if self._count == 0: self._count = self._count + 1 name = httplib.responses[self.code] msg = mimetools.Message(StringIO(self.headers)) return self.parent.error( "http", req, MockFile(), self.code, name, msg) else: self.req = req msg = mimetools.Message(StringIO("\r\n\r\n")) return MockResponse(200, "OK", msg, "", req.get_full_url()) class MockHTTPSHandler(urllib2.AbstractHTTPHandler): # Useful for testing the Proxy-Authorization request by verifying the # properties of httpcon def __init__(self): urllib2.AbstractHTTPHandler.__init__(self) self.httpconn = MockHTTPClass() def https_open(self, req): return self.do_open(self.httpconn, req) class MockPasswordManager: def add_password(self, realm, uri, user, password): self.realm = realm self.url = uri self.user = user self.password = password def find_user_password(self, realm, authuri): self.target_realm = realm self.target_url = authuri return self.user, self.password class OpenerDirectorTests(unittest.TestCase): def test_add_non_handler(self): class NonHandler(object): pass self.assertRaises(TypeError, OpenerDirector().add_handler, NonHandler()) def test_badly_named_methods(self): # test work-around for three methods that accidentally follow the # naming conventions for handler methods # (*_open() / *_request() / *_response()) # These used to call the accidentally-named methods, causing a # TypeError in real code; here, returning self from these mock # methods would either cause no exception, or AttributeError. from urllib2 import URLError o = OpenerDirector() meth_spec = [ [("do_open", "return self"), ("proxy_open", "return self")], [("redirect_request", "return self")], ] handlers = add_ordered_mock_handlers(o, meth_spec) o.add_handler(urllib2.UnknownHandler()) for scheme in "do", "proxy", "redirect": self.assertRaises(URLError, o.open, scheme+"://example.com/") def test_handled(self): # handler returning non-None means no more handlers will be called o = OpenerDirector() meth_spec = [ ["http_open", "ftp_open", "http_error_302"], ["ftp_open"], [("http_open", "return self")], [("http_open", "return self")], ] handlers = add_ordered_mock_handlers(o, meth_spec) req = Request("http://example.com/") r = o.open(req) # Second .http_open() gets called, third doesn't, since second returned # non-None. Handlers without .http_open() never get any methods called # on them. # In fact, second mock handler defining .http_open() returns self # (instead of response), which becomes the OpenerDirector's return # value. self.assertEqual(r, handlers[2]) calls = [(handlers[0], "http_open"), (handlers[2], "http_open")] for expected, got in zip(calls, o.calls): handler, name, args, kwds = got self.assertEqual((handler, name), expected) self.assertEqual(args, (req,)) def test_handler_order(self): o = OpenerDirector() handlers = [] for meths, handler_order in [ ([("http_open", "return self")], 500), (["http_open"], 0), ]: class MockHandlerSubclass(MockHandler): pass h = MockHandlerSubclass(meths) h.handler_order = handler_order handlers.append(h) o.add_handler(h) r = o.open("http://example.com/") # handlers called in reverse order, thanks to their sort order self.assertEqual(o.calls[0][0], handlers[1]) self.assertEqual(o.calls[1][0], handlers[0]) def test_raise(self): # raising URLError stops processing of request o = OpenerDirector() meth_spec = [ [("http_open", "raise")], [("http_open", "return self")], ] handlers = add_ordered_mock_handlers(o, meth_spec) req = Request("http://example.com/") self.assertRaises(urllib2.URLError, o.open, req) self.assertEqual(o.calls, [(handlers[0], "http_open", (req,), {})]) ## def test_error(self): ## # XXX this doesn't actually seem to be used in standard library, ## # but should really be tested anyway... def test_http_error(self): # XXX http_error_default # http errors are a special case o = OpenerDirector() meth_spec = [ [("http_open", "error 302")], [("http_error_400", "raise"), "http_open"], [("http_error_302", "return response"), "http_error_303", "http_error"], [("http_error_302")], ] handlers = add_ordered_mock_handlers(o, meth_spec) class Unknown: def __eq__(self, other): return True req = Request("http://example.com/") r = o.open(req) assert len(o.calls) == 2 calls = [(handlers[0], "http_open", (req,)), (handlers[2], "http_error_302", (req, Unknown(), 302, "", {}))] for expected, got in zip(calls, o.calls): handler, method_name, args = expected self.assertEqual((handler, method_name), got[:2]) self.assertEqual(args, got[2]) def test_processors(self): # *_request / *_response methods get called appropriately o = OpenerDirector() meth_spec = [ [("http_request", "return request"), ("http_response", "return response")], [("http_request", "return request"), ("http_response", "return response")], ] handlers = add_ordered_mock_handlers(o, meth_spec) req = Request("http://example.com/") r = o.open(req) # processor methods are called on *all* handlers that define them, # not just the first handler that handles the request calls = [ (handlers[0], "http_request"), (handlers[1], "http_request"), (handlers[0], "http_response"), (handlers[1], "http_response")] for i, (handler, name, args, kwds) in enumerate(o.calls): if i < 2: # *_request self.assertEqual((handler, name), calls[i]) self.assertEqual(len(args), 1) self.assertIsInstance(args[0], Request) else: # *_response self.assertEqual((handler, name), calls[i]) self.assertEqual(len(args), 2) self.assertIsInstance(args[0], Request) # response from opener.open is None, because there's no # handler that defines http_open to handle it self.assertTrue(args[1] is None or isinstance(args[1], MockResponse)) def sanepathname2url(path): import urllib urlpath = urllib.pathname2url(path) if os.name == "nt" and urlpath.startswith("///"): urlpath = urlpath[2:] # XXX don't ask me about the mac... return urlpath class HandlerTests(unittest.TestCase): def test_ftp(self): class MockFTPWrapper: def __init__(self, data): self.data = data def retrfile(self, filename, filetype): self.filename, self.filetype = filename, filetype return StringIO.StringIO(self.data), len(self.data) def close(self): pass class NullFTPHandler(urllib2.FTPHandler): def __init__(self, data): self.data = data def connect_ftp(self, user, passwd, host, port, dirs, timeout=socket._GLOBAL_DEFAULT_TIMEOUT): self.user, self.passwd = user, passwd self.host, self.port = host, port self.dirs = dirs self.ftpwrapper = MockFTPWrapper(self.data) return self.ftpwrapper import ftplib data = "rheum rhaponicum" h = NullFTPHandler(data) o = h.parent = MockOpener() for url, host, port, user, passwd, type_, dirs, filename, mimetype in [ ("ftp://localhost/foo/bar/baz.html", "localhost", ftplib.FTP_PORT, "", "", "I", ["foo", "bar"], "baz.html", "text/html"), ("ftp://parrot@localhost/foo/bar/baz.html", "localhost", ftplib.FTP_PORT, "parrot", "", "I", ["foo", "bar"], "baz.html", "text/html"), ("ftp://%25parrot@localhost/foo/bar/baz.html", "localhost", ftplib.FTP_PORT, "%parrot", "", "I", ["foo", "bar"], "baz.html", "text/html"), ("ftp://%2542parrot@localhost/foo/bar/baz.html", "localhost", ftplib.FTP_PORT, "%42parrot", "", "I", ["foo", "bar"], "baz.html", "text/html"), ("ftp://localhost:80/foo/bar/", "localhost", 80, "", "", "D", ["foo", "bar"], "", None), ("ftp://localhost/baz.gif;type=a", "localhost", ftplib.FTP_PORT, "", "", "A", [], "baz.gif", None), # XXX really this should guess image/gif ]: req = Request(url) req.timeout = None r = h.ftp_open(req) # ftp authentication not yet implemented by FTPHandler self.assertEqual(h.user, user) self.assertEqual(h.passwd, passwd) self.assertEqual(h.host, socket.gethostbyname(host)) self.assertEqual(h.port, port) self.assertEqual(h.dirs, dirs) self.assertEqual(h.ftpwrapper.filename, filename) self.assertEqual(h.ftpwrapper.filetype, type_) headers = r.info() self.assertEqual(headers.get("Content-type"), mimetype) self.assertEqual(int(headers["Content-length"]), len(data)) def test_file(self): import rfc822, socket h = urllib2.FileHandler() o = h.parent = MockOpener() TESTFN = test_support.TESTFN urlpath = sanepathname2url(os.path.abspath(TESTFN)) towrite = "hello, world\n" urls = [ "file://localhost%s" % urlpath, "file://%s" % urlpath, "file://%s%s" % (socket.gethostbyname('localhost'), urlpath), ] try: localaddr = socket.gethostbyname(socket.gethostname()) except socket.gaierror: localaddr = '' if localaddr: urls.append("file://%s%s" % (localaddr, urlpath)) for url in urls: f = open(TESTFN, "wb") try: try: f.write(towrite) finally: f.close() r = h.file_open(Request(url)) try: data = r.read() headers = r.info() respurl = r.geturl() finally: r.close() stats = os.stat(TESTFN) modified = rfc822.formatdate(stats.st_mtime) finally: os.remove(TESTFN) self.assertEqual(data, towrite) self.assertEqual(headers["Content-type"], "text/plain") self.assertEqual(headers["Content-length"], "13") self.assertEqual(headers["Last-modified"], modified) self.assertEqual(respurl, url) for url in [ "file://localhost:80%s" % urlpath, "file:///file_does_not_exist.txt", "file://%s:80%s/%s" % (socket.gethostbyname('localhost'), os.getcwd(), TESTFN), "file://somerandomhost.ontheinternet.com%s/%s" % (os.getcwd(), TESTFN), ]: try: f = open(TESTFN, "wb") try: f.write(towrite) finally: f.close() self.assertRaises(urllib2.URLError, h.file_open, Request(url)) finally: os.remove(TESTFN) h = urllib2.FileHandler() o = h.parent = MockOpener() # XXXX why does // mean ftp (and /// mean not ftp!), and where # is file: scheme specified? I think this is really a bug, and # what was intended was to distinguish between URLs like: # file:/blah.txt (a file) # file://localhost/blah.txt (a file) # file:///blah.txt (a file) # file://ftp.example.com/blah.txt (an ftp URL) for url, ftp in [ ("file://ftp.example.com//foo.txt", True), ("file://ftp.example.com///foo.txt", False), # XXXX bug: fails with OSError, should be URLError ("file://ftp.example.com/foo.txt", False), ("file://somehost//foo/something.txt", True), ("file://localhost//foo/something.txt", False), ]: req = Request(url) try: h.file_open(req) # XXXX remove OSError when bug fixed except (urllib2.URLError, OSError): self.assertTrue(not ftp) else: self.assertTrue(o.req is req) self.assertEqual(req.type, "ftp") self.assertEqual(req.type == "ftp", ftp) def test_http(self): h = urllib2.AbstractHTTPHandler() o = h.parent = MockOpener() url = "http://example.com/" for method, data in [("GET", None), ("POST", "blah")]: req = Request(url, data, {"Foo": "bar"}) req.timeout = None req.add_unredirected_header("Spam", "eggs") http = MockHTTPClass() r = h.do_open(http, req) # result attributes r.read; r.readline # wrapped MockFile methods r.info; r.geturl # addinfourl methods r.code, r.msg == 200, "OK" # added from MockHTTPClass.getreply() hdrs = r.info() hdrs.get; hdrs.has_key # r.info() gives dict from .getreply() self.assertEqual(r.geturl(), url) self.assertEqual(http.host, "example.com") self.assertEqual(http.level, 0) self.assertEqual(http.method, method) self.assertEqual(http.selector, "/") self.assertEqual(http.req_headers, [("Connection", "close"), ("Foo", "bar"), ("Spam", "eggs")]) self.assertEqual(http.data, data) # check socket.error converted to URLError http.raise_on_endheaders = True self.assertRaises(urllib2.URLError, h.do_open, http, req) # check adding of standard headers o.addheaders = [("Spam", "eggs")] for data in "", None: # POST, GET req = Request("http://example.com/", data) r = MockResponse(200, "OK", {}, "") newreq = h.do_request_(req) if data is None: # GET self.assertNotIn("Content-length", req.unredirected_hdrs) self.assertNotIn("Content-type", req.unredirected_hdrs) else: # POST self.assertEqual(req.unredirected_hdrs["Content-length"], "0") self.assertEqual(req.unredirected_hdrs["Content-type"], "application/x-www-form-urlencoded") # XXX the details of Host could be better tested self.assertEqual(req.unredirected_hdrs["Host"], "example.com") self.assertEqual(req.unredirected_hdrs["Spam"], "eggs") # don't clobber existing headers req.add_unredirected_header("Content-length", "foo") req.add_unredirected_header("Content-type", "bar") req.add_unredirected_header("Host", "baz") req.add_unredirected_header("Spam", "foo") newreq = h.do_request_(req) self.assertEqual(req.unredirected_hdrs["Content-length"], "foo") self.assertEqual(req.unredirected_hdrs["Content-type"], "bar") self.assertEqual(req.unredirected_hdrs["Host"], "baz") self.assertEqual(req.unredirected_hdrs["Spam"], "foo") def test_http_doubleslash(self): # Checks that the presence of an unnecessary double slash in a url doesn't break anything # Previously, a double slash directly after the host could cause incorrect parsing of the url h = urllib2.AbstractHTTPHandler() o = h.parent = MockOpener() data = "" ds_urls = [ "http://example.com/foo/bar/baz.html", "http://example.com//foo/bar/baz.html", "http://example.com/foo//bar/baz.html", "http://example.com/foo/bar//baz.html", ] for ds_url in ds_urls: ds_req = Request(ds_url, data) # Check whether host is determined correctly if there is no proxy np_ds_req = h.do_request_(ds_req) self.assertEqual(np_ds_req.unredirected_hdrs["Host"],"example.com") # Check whether host is determined correctly if there is a proxy ds_req.set_proxy("someproxy:3128",None) p_ds_req = h.do_request_(ds_req) self.assertEqual(p_ds_req.unredirected_hdrs["Host"],"example.com") def test_fixpath_in_weirdurls(self): # Issue4493: urllib2 to supply '/' when to urls where path does not # start with'/' h = urllib2.AbstractHTTPHandler() o = h.parent = MockOpener() weird_url = 'http://www.python.org?getspam' req = Request(weird_url) newreq = h.do_request_(req) self.assertEqual(newreq.get_host(),'www.python.org') self.assertEqual(newreq.get_selector(),'/?getspam') url_without_path = 'http://www.python.org' req = Request(url_without_path) newreq = h.do_request_(req) self.assertEqual(newreq.get_host(),'www.python.org') self.assertEqual(newreq.get_selector(),'') def test_errors(self): h = urllib2.HTTPErrorProcessor() o = h.parent = MockOpener() url = "http://example.com/" req = Request(url) # all 2xx are passed through r = MockResponse(200, "OK", {}, "", url) newr = h.http_response(req, r) self.assertTrue(r is newr) self.assertTrue(not hasattr(o, "proto")) # o.error not called r = MockResponse(202, "Accepted", {}, "", url) newr = h.http_response(req, r) self.assertTrue(r is newr) self.assertTrue(not hasattr(o, "proto")) # o.error not called r = MockResponse(206, "Partial content", {}, "", url) newr = h.http_response(req, r) self.assertTrue(r is newr) self.assertTrue(not hasattr(o, "proto")) # o.error not called # anything else calls o.error (and MockOpener returns None, here) r = MockResponse(502, "Bad gateway", {}, "", url) self.assertTrue(h.http_response(req, r) is None) self.assertEqual(o.proto, "http") # o.error called self.assertEqual(o.args, (req, r, 502, "Bad gateway", {})) def test_cookies(self): cj = MockCookieJar() h = urllib2.HTTPCookieProcessor(cj) o = h.parent = MockOpener() req = Request("http://example.com/") r = MockResponse(200, "OK", {}, "") newreq = h.http_request(req) self.assertTrue(cj.ach_req is req is newreq) self.assertEqual(req.get_origin_req_host(), "example.com") self.assertTrue(not req.is_unverifiable()) newr = h.http_response(req, r) self.assertTrue(cj.ec_req is req) self.assertTrue(cj.ec_r is r is newr) def test_redirect(self): from_url = "http://example.com/a.html" to_url = "http://example.com/b.html" h = urllib2.HTTPRedirectHandler() o = h.parent = MockOpener() # ordinary redirect behaviour for code in 301, 302, 303, 307: for data in None, "blah\nblah\n": method = getattr(h, "http_error_%s" % code) req = Request(from_url, data) req.add_header("Nonsense", "viking=withhold") req.timeout = socket._GLOBAL_DEFAULT_TIMEOUT if data is not None: req.add_header("Content-Length", str(len(data))) req.add_unredirected_header("Spam", "spam") try: method(req, MockFile(), code, "Blah", MockHeaders({"location": to_url})) except urllib2.HTTPError: # 307 in response to POST requires user OK self.assertTrue(code == 307 and data is not None) self.assertEqual(o.req.get_full_url(), to_url) try: self.assertEqual(o.req.get_method(), "GET") except AttributeError: self.assertTrue(not o.req.has_data()) # now it's a GET, there should not be headers regarding content # (possibly dragged from before being a POST) headers = [x.lower() for x in o.req.headers] self.assertNotIn("content-length", headers) self.assertNotIn("content-type", headers) self.assertEqual(o.req.headers["Nonsense"], "viking=withhold") self.assertNotIn("Spam", o.req.headers) self.assertNotIn("Spam", o.req.unredirected_hdrs) # loop detection req = Request(from_url) req.timeout = socket._GLOBAL_DEFAULT_TIMEOUT def redirect(h, req, url=to_url): h.http_error_302(req, MockFile(), 302, "Blah", MockHeaders({"location": url})) # Note that the *original* request shares the same record of # redirections with the sub-requests caused by the redirections. # detect infinite loop redirect of a URL to itself req = Request(from_url, origin_req_host="example.com") count = 0 req.timeout = socket._GLOBAL_DEFAULT_TIMEOUT try: while 1: redirect(h, req, "http://example.com/") count = count + 1 except urllib2.HTTPError: # don't stop until max_repeats, because cookies may introduce state self.assertEqual(count, urllib2.HTTPRedirectHandler.max_repeats) # detect endless non-repeating chain of redirects req = Request(from_url, origin_req_host="example.com") count = 0 req.timeout = socket._GLOBAL_DEFAULT_TIMEOUT try: while 1: redirect(h, req, "http://example.com/%d" % count) count = count + 1 except urllib2.HTTPError: self.assertEqual(count, urllib2.HTTPRedirectHandler.max_redirections) def test_invalid_redirect(self): from_url = "http://example.com/a.html" valid_schemes = ['http', 'https', 'ftp'] invalid_schemes = ['file', 'imap', 'ldap'] schemeless_url = "example.com/b.html" h = urllib2.HTTPRedirectHandler() o = h.parent = MockOpener() req = Request(from_url) req.timeout = socket._GLOBAL_DEFAULT_TIMEOUT for scheme in invalid_schemes: invalid_url = scheme + '://' + schemeless_url self.assertRaises(urllib2.HTTPError, h.http_error_302, req, MockFile(), 302, "Security Loophole", MockHeaders({"location": invalid_url})) for scheme in valid_schemes: valid_url = scheme + '://' + schemeless_url h.http_error_302(req, MockFile(), 302, "That's fine", MockHeaders({"location": valid_url})) self.assertEqual(o.req.get_full_url(), valid_url) def test_cookie_redirect(self): # cookies shouldn't leak into redirected requests from cookielib import CookieJar from test.test_cookielib import interact_netscape cj = CookieJar() interact_netscape(cj, "http://www.example.com/", "spam=eggs") hh = MockHTTPHandler(302, "Location: http://www.cracker.com/\r\n\r\n") hdeh = urllib2.HTTPDefaultErrorHandler() hrh = urllib2.HTTPRedirectHandler() cp = urllib2.HTTPCookieProcessor(cj) o = build_test_opener(hh, hdeh, hrh, cp) o.open("http://www.example.com/") self.assertTrue(not hh.req.has_header("Cookie")) def test_redirect_fragment(self): redirected_url = 'http://www.example.com/index.html#OK\r\n\r\n' hh = MockHTTPHandler(302, 'Location: ' + redirected_url) hdeh = urllib2.HTTPDefaultErrorHandler() hrh = urllib2.HTTPRedirectHandler() o = build_test_opener(hh, hdeh, hrh) fp = o.open('http://www.example.com') self.assertEqual(fp.geturl(), redirected_url.strip()) def test_proxy(self): o = OpenerDirector() ph = urllib2.ProxyHandler(dict(http="proxy.example.com:3128")) o.add_handler(ph) meth_spec = [ [("http_open", "return response")] ] handlers = add_ordered_mock_handlers(o, meth_spec) req = Request("http://acme.example.com/") self.assertEqual(req.get_host(), "acme.example.com") r = o.open(req) self.assertEqual(req.get_host(), "proxy.example.com:3128") self.assertEqual([(handlers[0], "http_open")], [tup[0:2] for tup in o.calls]) def test_proxy_no_proxy(self): os.environ['no_proxy'] = 'python.org' o = OpenerDirector() ph = urllib2.ProxyHandler(dict(http="proxy.example.com")) o.add_handler(ph) req = Request("http://www.perl.org/") self.assertEqual(req.get_host(), "www.perl.org") r = o.open(req) self.assertEqual(req.get_host(), "proxy.example.com") req = Request("http://www.python.org") self.assertEqual(req.get_host(), "www.python.org") r = o.open(req) self.assertEqual(req.get_host(), "www.python.org") del os.environ['no_proxy'] def test_proxy_https(self): o = OpenerDirector() ph = urllib2.ProxyHandler(dict(https='proxy.example.com:3128')) o.add_handler(ph) meth_spec = [ [("https_open","return response")] ] handlers = add_ordered_mock_handlers(o, meth_spec) req = Request("https://www.example.com/") self.assertEqual(req.get_host(), "www.example.com") r = o.open(req) self.assertEqual(req.get_host(), "proxy.example.com:3128") self.assertEqual([(handlers[0], "https_open")], [tup[0:2] for tup in o.calls]) def test_proxy_https_proxy_authorization(self): o = OpenerDirector() ph = urllib2.ProxyHandler(dict(https='proxy.example.com:3128')) o.add_handler(ph) https_handler = MockHTTPSHandler() o.add_handler(https_handler) req = Request("https://www.example.com/") req.add_header("Proxy-Authorization","FooBar") req.add_header("User-Agent","Grail") self.assertEqual(req.get_host(), "www.example.com") self.assertIsNone(req._tunnel_host) r = o.open(req) # Verify Proxy-Authorization gets tunneled to request. # httpsconn req_headers do not have the Proxy-Authorization header but # the req will have. self.assertNotIn(("Proxy-Authorization","FooBar"), https_handler.httpconn.req_headers) self.assertIn(("User-Agent","Grail"), https_handler.httpconn.req_headers) self.assertIsNotNone(req._tunnel_host) self.assertEqual(req.get_host(), "proxy.example.com:3128") self.assertEqual(req.get_header("Proxy-authorization"),"FooBar") def test_basic_auth(self, quote_char='"'): opener = OpenerDirector() password_manager = MockPasswordManager() auth_handler = urllib2.HTTPBasicAuthHandler(password_manager) realm = "ACME Widget Store" http_handler = MockHTTPHandler( 401, 'WWW-Authenticate: Basic realm=%s%s%s\r\n\r\n' % (quote_char, realm, quote_char) ) opener.add_handler(auth_handler) opener.add_handler(http_handler) self._test_basic_auth(opener, auth_handler, "Authorization", realm, http_handler, password_manager, "http://acme.example.com/protected", "http://acme.example.com/protected" ) def test_basic_auth_with_single_quoted_realm(self): self.test_basic_auth(quote_char="'") def test_basic_auth_with_unquoted_realm(self): opener = OpenerDirector() password_manager = MockPasswordManager() auth_handler = urllib2.HTTPBasicAuthHandler(password_manager) realm = "ACME Widget Store" http_handler = MockHTTPHandler( 401, 'WWW-Authenticate: Basic realm=%s\r\n\r\n' % realm) opener.add_handler(auth_handler) opener.add_handler(http_handler) msg = "Basic Auth Realm was unquoted" with test_support.check_warnings((msg, UserWarning)): self._test_basic_auth(opener, auth_handler, "Authorization", realm, http_handler, password_manager, "http://acme.example.com/protected", "http://acme.example.com/protected" ) def test_proxy_basic_auth(self): opener = OpenerDirector() ph = urllib2.ProxyHandler(dict(http="proxy.example.com:3128")) opener.add_handler(ph) password_manager = MockPasswordManager() auth_handler = urllib2.ProxyBasicAuthHandler(password_manager) realm = "ACME Networks" http_handler = MockHTTPHandler( 407, 'Proxy-Authenticate: Basic realm="%s"\r\n\r\n' % realm) opener.add_handler(auth_handler) opener.add_handler(http_handler) self._test_basic_auth(opener, auth_handler, "Proxy-authorization", realm, http_handler, password_manager, "http://acme.example.com:3128/protected", "proxy.example.com:3128", ) def test_basic_and_digest_auth_handlers(self): # HTTPDigestAuthHandler raised an exception if it couldn't handle a 40* # response (http://python.org/sf/1479302), where it should instead # return None to allow another handler (especially # HTTPBasicAuthHandler) to handle the response. # Also (http://python.org/sf/14797027, RFC 2617 section 1.2), we must # try digest first (since it's the strongest auth scheme), so we record # order of calls here to check digest comes first: class RecordingOpenerDirector(OpenerDirector): def __init__(self): OpenerDirector.__init__(self) self.recorded = [] def record(self, info): self.recorded.append(info) class TestDigestAuthHandler(urllib2.HTTPDigestAuthHandler): def http_error_401(self, *args, **kwds): self.parent.record("digest") urllib2.HTTPDigestAuthHandler.http_error_401(self, *args, **kwds) class TestBasicAuthHandler(urllib2.HTTPBasicAuthHandler): def http_error_401(self, *args, **kwds): self.parent.record("basic") urllib2.HTTPBasicAuthHandler.http_error_401(self, *args, **kwds) opener = RecordingOpenerDirector() password_manager = MockPasswordManager() digest_handler = TestDigestAuthHandler(password_manager) basic_handler = TestBasicAuthHandler(password_manager) realm = "ACME Networks" http_handler = MockHTTPHandler( 401, 'WWW-Authenticate: Basic realm="%s"\r\n\r\n' % realm) opener.add_handler(basic_handler) opener.add_handler(digest_handler) opener.add_handler(http_handler) # check basic auth isn't blocked by digest handler failing self._test_basic_auth(opener, basic_handler, "Authorization", realm, http_handler, password_manager, "http://acme.example.com/protected", "http://acme.example.com/protected", ) # check digest was tried before basic (twice, because # _test_basic_auth called .open() twice) self.assertEqual(opener.recorded, ["digest", "basic"]*2) def _test_basic_auth(self, opener, auth_handler, auth_header, realm, http_handler, password_manager, request_url, protected_url): import base64 user, password = "wile", "coyote" # .add_password() fed through to password manager auth_handler.add_password(realm, request_url, user, password) self.assertEqual(realm, password_manager.realm) self.assertEqual(request_url, password_manager.url) self.assertEqual(user, password_manager.user) self.assertEqual(password, password_manager.password) r = opener.open(request_url) # should have asked the password manager for the username/password self.assertEqual(password_manager.target_realm, realm) self.assertEqual(password_manager.target_url, protected_url) # expect one request without authorization, then one with self.assertEqual(len(http_handler.requests), 2) self.assertFalse(http_handler.requests[0].has_header(auth_header)) userpass = '%s:%s' % (user, password) auth_hdr_value = 'Basic '+base64.encodestring(userpass).strip() self.assertEqual(http_handler.requests[1].get_header(auth_header), auth_hdr_value) self.assertEqual(http_handler.requests[1].unredirected_hdrs[auth_header], auth_hdr_value) # if the password manager can't find a password, the handler won't # handle the HTTP auth error password_manager.user = password_manager.password = None http_handler.reset() r = opener.open(request_url) self.assertEqual(len(http_handler.requests), 1) self.assertFalse(http_handler.requests[0].has_header(auth_header)) class MiscTests(unittest.TestCase, FakeHTTPMixin): def test_build_opener(self): class MyHTTPHandler(urllib2.HTTPHandler): pass class FooHandler(urllib2.BaseHandler): def foo_open(self): pass class BarHandler(urllib2.BaseHandler): def bar_open(self): pass build_opener = urllib2.build_opener o = build_opener(FooHandler, BarHandler) self.opener_has_handler(o, FooHandler) self.opener_has_handler(o, BarHandler) # can take a mix of classes and instances o = build_opener(FooHandler, BarHandler()) self.opener_has_handler(o, FooHandler) self.opener_has_handler(o, BarHandler) # subclasses of default handlers override default handlers o = build_opener(MyHTTPHandler) self.opener_has_handler(o, MyHTTPHandler) # a particular case of overriding: default handlers can be passed # in explicitly o = build_opener() self.opener_has_handler(o, urllib2.HTTPHandler) o = build_opener(urllib2.HTTPHandler) self.opener_has_handler(o, urllib2.HTTPHandler) o = build_opener(urllib2.HTTPHandler()) self.opener_has_handler(o, urllib2.HTTPHandler) # Issue2670: multiple handlers sharing the same base class class MyOtherHTTPHandler(urllib2.HTTPHandler): pass o = build_opener(MyHTTPHandler, MyOtherHTTPHandler) self.opener_has_handler(o, MyHTTPHandler) self.opener_has_handler(o, MyOtherHTTPHandler) def opener_has_handler(self, opener, handler_class): for h in opener.handlers: if h.__class__ == handler_class: break else: self.assertTrue(False) @unittest.skipUnless(ssl, "ssl module required") def test_url_with_control_char_rejected(self): for char_no in range(0, 0x21) + range(0x7f, 0x100): char = chr(char_no) schemeless_url = "//localhost:7777/test%s/" % char self.fakehttp(b"HTTP/1.1 200 OK\r\n\r\nHello.") try: # We explicitly test urllib.request.urlopen() instead of the top # level 'def urlopen()' function defined in this... (quite ugly) # test suite. They use different url opening codepaths. Plain # urlopen uses FancyURLOpener which goes via a codepath that # calls urllib.parse.quote() on the URL which makes all of the # above attempts at injection within the url _path_ safe. escaped_char_repr = repr(char).replace('\\', r'\\') InvalidURL = httplib.InvalidURL with self.assertRaisesRegexp( InvalidURL, "contain control.*" + escaped_char_repr): urllib2.urlopen("http:" + schemeless_url) with self.assertRaisesRegexp( InvalidURL, "contain control.*" + escaped_char_repr): urllib2.urlopen("https:" + schemeless_url) finally: self.unfakehttp() @unittest.skipUnless(ssl, "ssl module required") def test_url_with_newline_header_injection_rejected(self): self.fakehttp(b"HTTP/1.1 200 OK\r\n\r\nHello.") host = "localhost:7777?a=1 HTTP/1.1\r\nX-injected: header\r\nTEST: 123" schemeless_url = "//" + host + ":8080/test/?test=a" try: # We explicitly test urllib2.urlopen() instead of the top # level 'def urlopen()' function defined in this... (quite ugly) # test suite. They use different url opening codepaths. Plain # urlopen uses FancyURLOpener which goes via a codepath that # calls urllib.parse.quote() on the URL which makes all of the # above attempts at injection within the url _path_ safe. InvalidURL = httplib.InvalidURL with self.assertRaisesRegexp( InvalidURL, r"contain control.*\\r.*(found at least . .)"): urllib2.urlopen("http:" + schemeless_url) with self.assertRaisesRegexp(InvalidURL, r"contain control.*\\n"): urllib2.urlopen("https:" + schemeless_url) finally: self.unfakehttp() class RequestTests(unittest.TestCase): def setUp(self): self.get = urllib2.Request("http://www.python.org/~jeremy/") self.post = urllib2.Request("http://www.python.org/~jeremy/", "data", headers={"X-Test": "test"}) def test_method(self): self.assertEqual("POST", self.post.get_method()) self.assertEqual("GET", self.get.get_method()) def test_add_data(self): self.assertTrue(not self.get.has_data()) self.assertEqual("GET", self.get.get_method()) self.get.add_data("spam") self.assertTrue(self.get.has_data()) self.assertEqual("POST", self.get.get_method()) def test_get_full_url(self): self.assertEqual("http://www.python.org/~jeremy/", self.get.get_full_url()) def test_selector(self): self.assertEqual("/~jeremy/", self.get.get_selector()) req = urllib2.Request("http://www.python.org/") self.assertEqual("/", req.get_selector()) def test_get_type(self): self.assertEqual("http", self.get.get_type()) def test_get_host(self): self.assertEqual("www.python.org", self.get.get_host()) def test_get_host_unquote(self): req = urllib2.Request("http://www.%70ython.org/") self.assertEqual("www.python.org", req.get_host()) def test_proxy(self): self.assertTrue(not self.get.has_proxy()) self.get.set_proxy("www.perl.org", "http") self.assertTrue(self.get.has_proxy()) self.assertEqual("www.python.org", self.get.get_origin_req_host()) self.assertEqual("www.perl.org", self.get.get_host()) def test_wrapped_url(self): req = Request("<URL:http://www.python.org>") self.assertEqual("www.python.org", req.get_host()) def test_url_fragment(self): req = Request("http://www.python.org/?qs=query#fragment=true") self.assertEqual("/?qs=query", req.get_selector()) req = Request("http://www.python.org/#fun=true") self.assertEqual("/", req.get_selector()) # Issue 11703: geturl() omits fragment in the original URL. url = 'http://docs.python.org/library/urllib2.html#OK' req = Request(url) self.assertEqual(req.get_full_url(), url) def test_HTTPError_interface(self): """ Issue 13211 reveals that HTTPError didn't implement the URLError interface even though HTTPError is a subclass of URLError. >>> err = urllib2.HTTPError(msg='something bad happened', url=None, code=None, hdrs=None, fp=None) >>> assert hasattr(err, 'reason') >>> err.reason 'something bad happened' """ def test_HTTPError_interface_call(self): """ Issue 15701= - HTTPError interface has info method available from URLError. """ err = urllib2.HTTPError(msg='something bad happened', url=None, code=None, hdrs='Content-Length:42', fp=None) self.assertTrue(hasattr(err, 'reason')) assert hasattr(err, 'reason') assert hasattr(err, 'info') assert callable(err.info) try: err.info() except AttributeError: self.fail("err.info() failed") self.assertEqual(err.info(), "Content-Length:42") def test_main(verbose=None): from test import test_urllib2 test_support.run_doctest(test_urllib2, verbose) test_support.run_doctest(urllib2, verbose) tests = (TrivialTests, OpenerDirectorTests, HandlerTests, MiscTests, RequestTests) test_support.run_unittest(*tests) if __name__ == "__main__": test_main(verbose=True)