Your IP : 216.73.216.213


Current Path : /opt/alt/python33/lib64/python3.3/test/__pycache__/
Upload File :
Current File : //opt/alt/python33/lib64/python3.3/test/__pycache__/test_httpservers.cpython-33.pyc

�
��fdic@s9dZddlmZmZmZmZddlmZddlZddl	Z	ddl
Z
ddlZddlZddl
Z
ddlZddlZddlZddlmZddlZddlmZejd�ZGdd	�d	�ZGd
d�dej�ZGdd
�d
ej�ZGdd�de�ZGdd�de�ZdZ dZ!ej"e#ed�o�ej$�dkd�Gdd�de��Z%Gdd�de�Z&Gdd�de&�Z'Gdd�d�Z(Gdd�dej�Z)Gd d!�d!ej�Z*dd"d#�Z,e-d$kr5e,�ndS(%u�Unittests for the various HTTPServer modules.

Written by Cody A.W. Somerville <cody-somerville@ubuntu.com>,
Josip Dzolonga, and Michael Otteneder for the 2007/08 GHOP contest.
i(uBaseHTTPRequestHandleru
HTTPServeruSimpleHTTPRequestHandleruCGIHTTPRequestHandler(userverN(uBytesIO(usupportu	threadingcBs/|EeZdZdd�Zddd�ZdS(uNoLogRequestHandlercGsdS(N((uselfuargs((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyulog_messagesuNoLogRequestHandler.log_messagecCsdS(Nu((uselfun((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyureadsuNoLogRequestHandler.readN(u__name__u
__module__u__qualname__ulog_messageuNoneuread(u
__locals__((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyuNoLogRequestHandlersuNoLogRequestHandlercBs8|EeZdZdd�Zdd�Zdd�ZdS(uTestServerThreadcCs&tjj|�||_||_dS(N(u	threadinguThreadu__init__urequest_handlerutest_object(uselfutest_objecturequest_handler((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu__init__$s	uTestServerThread.__init__c
Cs{td|j�|_|jjj�\|j_|j_|jjj	�d|_z|jjd�Wd|jj�XdS(Nu	localhostig�������?(u	localhosti(
u
HTTPServerurequest_handleruserverusocketugetsocknameutest_objectuHOSTuPORTuserver_startedusetuNoneu
serve_foreveruserver_close(uself((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyurun)s$	uTestServerThread.runcCs|jj�dS(N(userverushutdown(uself((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyustop3suTestServerThread.stopN(u__name__u
__module__u__qualname__u__init__urunustop(u
__locals__((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyuTestServerThread#s
uTestServerThreadcBsA|EeZdZdd�Zdd�Zddidd�ZdS(	uBaseTestCasecCs`tj�|_tj�t_tj�|_t	||j
�|_|jj�|jj
�dS(N(usupportuthreading_setupu_threadsuEnvironmentVarGuarduosuenvironu	threadinguEventuserver_starteduTestServerThreadurequest_handleruthreadustartuwait(uself((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyusetUp8s
uBaseTestCase.setUpcCs7|jj�d|_tjj�tj|j�dS(N(	uthreadustopuNoneuosuenvironu__exit__usupportuthreading_cleanupu_threads(uself((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutearDown@s
	
uBaseTestCase.tearDownuGETcCsDtjj|j|j�|_|jj||||�|jj�S(N(uhttpuclientuHTTPConnectionuHOSTuPORTu
connectionurequestugetresponse(uselfuuriumethodubodyuheaders((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyurequestFsuBaseTestCase.requestN(u__name__u
__module__u__qualname__usetUputearDownuNoneurequest(u
__locals__((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyuBaseTestCase7suBaseTestCasecBs�|EeZdZGdd�dee�Zdd�Zdd�Zdd�Zd	d
�Z	dd�Z
d
d�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#S($uBaseHTTPServerTestCasecBs\|EeZdZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Z	dS(
u&BaseHTTPServerTestCase.request_handleruHTTP/1.1cCs;|jd�|jdd�|jdd�|j�dS(Ni�uContent-Typeu	text/htmlu
Connectionuclose(u
send_responseusend_headeruend_headers(uself((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyudo_TESTQs
u.BaseHTTPServerTestCase.request_handler.do_TESTcCs;|jd�|jdd�|jdd�|j�dS(Ni�uContent-Typeu	text/htmlu
Connectionu
keep-alive(u
send_responseusend_headeruend_headers(uself((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyudo_KEEPWs
u.BaseHTTPServerTestCase.request_handler.do_KEEPcCs|jd�dS(Ni�(u
send_error(uself((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyudo_KEYERROR]su2BaseHTTPServerTestCase.request_handler.do_KEYERRORcCs;|jd�|jdd�|jdd�|j�dS(Ni�uContent-Typeu	text/htmlu
Connectionuclose(u
send_responseusend_headeruend_headers(uself((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu	do_CUSTOM`s
u0BaseHTTPServerTestCase.request_handler.do_CUSTOMcCsa|jd�|jdd�|jdd�|j�|jdjd�}|jj|�dS(Ni�u	X-SpecialuDängerous Mindu
Connectionucloseux-special-incominguutf-8(u
send_responseusend_headeruend_headersuheadersuencodeuwfileuwrite(uselfubody((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyudo_LATINONEHEADERfs

u8BaseHTTPServerTestCase.request_handler.do_LATINONEHEADERN(
u__name__u
__module__u__qualname__uprotocol_versionudefault_request_versionudo_TESTudo_KEEPudo_KEYERRORu	do_CUSTOMudo_LATINONEHEADER(u
__locals__((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyurequest_handlerMsurequest_handlercCs<tj|�tjj|j|j�|_|jj�dS(N(	uBaseTestCaseusetUpuhttpuclientuHTTPConnectionuHOSTuPORTuconuconnect(uself((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyusetUpns
uBaseHTTPServerTestCase.setUpcCs9|jjdd�|jj�}|j|jd�dS(NuGETu/i�(uconurequestugetresponseuassertEqualustatus(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_commandssu#BaseHTTPServerTestCase.test_commandcCsRd|j_|jjdd�|jj�|jj�}|j|jd�dS(Nu	HTTP/1.1
uGETu/i�(uconu
_http_vsn_stru
putrequestu
endheadersugetresponseuassertEqualustatus(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_request_line_trimmingxs

u1BaseHTTPServerTestCase.test_request_line_trimmingcCsRd|j_|jjdd�|jj�|jj�}|j|jd�dS(NuFUBARuGETu/i�(uconu
_http_vsn_stru
putrequestu
endheadersugetresponseuassertEqualustatus(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_version_boguss

u)BaseHTTPServerTestCase.test_version_boguscCsRd|j_|jjdd�|jj�|jj�}|j|jd�dS(Nu
HTTP/9.9.9uGETu/i�(uconu
_http_vsn_stru
putrequestu
endheadersugetresponseuassertEqualustatus(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_version_digits�s

u*BaseHTTPServerTestCase.test_version_digitscCsRd|j_|jjdd�|jj�|jj�}|j|jd�dS(NuuGETu/i�(uconu
_http_vsn_stru
putrequestu
endheadersugetresponseuassertEqualustatus(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_version_none_get�s

u,BaseHTTPServerTestCase.test_version_none_getcCsRd|j_|jjdd�|jj�|jj�}|j|jd�dS(NuuPUTu/i�(uconu
_http_vsn_stru
putrequestu
endheadersugetresponseuassertEqualustatus(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_version_none�s

u(BaseHTTPServerTestCase.test_version_nonecCs^d|j_d|j_|jjdd�|jj�|jj�}|j|jd�dS(NicuHTTP/9.9uGETu/i�(uconu	_http_vsnu
_http_vsn_stru
putrequestu
endheadersugetresponseuassertEqualustatus(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_version_invalid�s
u+BaseHTTPServerTestCase.test_version_invalidcCsRd|j_|jjdd�|jj�|jj�}|j|jd�dS(Nui�(uconu
_http_vsn_stru
putrequestu
endheadersugetresponseuassertEqualustatus(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_send_blank�s

u&BaseHTTPServerTestCase.test_send_blankcCsY|jjdd�|jjdd�|jj�|jj�}|j|jd�dS(NuGETu/u
Connectionuclosei�(uconu
putrequestu	putheaderu
endheadersugetresponseuassertEqualustatus(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_header_close�s

u(BaseHTTPServerTestCase.test_header_closecCsed|j_|jjdd�|jjdd�|jj�|jj�}|j|jd�dS(NuHTTP/1.1uGETu/u
Connectionu
keep-alivei�(uconu
_http_vsn_stru
putrequestu	putheaderu
endheadersugetresponseuassertEqualustatus(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_head_keep_alive�s
u+BaseHTTPServerTestCase.test_head_keep_alivecCs9|jjdd�|jj�}|j|jd�dS(NuTESTu/i�(uconurequestugetresponseuassertEqualustatus(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_handler�su#BaseHTTPServerTestCase.test_handlercCse|jjdd�|jj�}|j|jd�d�|jjdd�|j|jj�dS(NuKEEPu/u
Connectionu
keep-aliveuTEST(uconurequestugetresponseuassertEqualu	getheaderu
addCleanupuclose(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_return_header_keep_alive�s
u4BaseHTTPServerTestCase.test_return_header_keep_alivecCs9|jjdd�|jj�}|j|jd�dS(NuKEYERRORu/i�(uconurequestugetresponseuassertEqualustatus(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_internal_key_error�su.BaseHTTPServerTestCase.test_internal_key_errorcCs9|jjdd�|jj�}|j|jd�dS(NuCUSTOMu/i�(uconurequestugetresponseuassertEqualustatus(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_return_custom_status�su0BaseHTTPServerTestCase.test_return_custom_statuscCsk|jjdddidd6�|jj�}|j|jd�d�|j|j�djd��dS(	NuLATINONEHEADERu/uheadersuÄrger mit UnicodeuX-Special-Incomingu	X-SpecialuDängerous Minduutf-8(uconurequestugetresponseuassertEqualu	getheaderureaduencode(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_latin1_header�s
u)BaseHTTPServerTestCase.test_latin1_headerN(u__name__u
__module__u__qualname__uNoLogRequestHandleruBaseHTTPRequestHandlerurequest_handlerusetUputest_commandutest_request_line_trimmingutest_version_bogusutest_version_digitsutest_version_none_getutest_version_noneutest_version_invalidutest_send_blankutest_header_closeutest_head_keep_aliveutest_handlerutest_return_header_keep_aliveutest_internal_key_errorutest_return_custom_statusutest_latin1_header(u
__locals__((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyuBaseHTTPServerTestCaseLs"!uBaseHTTPServerTestCasecBsx|EeZdZGdd�dee�Zdd�Zdd�Zddd�Z	d	d
�Z
dd�Zd
d�ZdS(uSimpleHTTPServerTestCasecBs|EeZdZdS(u(SimpleHTTPServerTestCase.request_handlerN(u__name__u
__module__u__qualname__(u
__locals__((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyurequest_handler�surequest_handlerc	Cs�tj|�tj�|_tj�}tj|�d|_tj	d|�|_
tjj|j
�|_
ttjj|j
d�d��}|j|j�WdQXdS(NsWe are the knights who say Ni!udirutestuwb(uBaseTestCaseusetUpuosugetcwducwdutempfileu
gettempdiruchdirudataumkdtemputempdirupathubasenameutempdir_nameuopenujoinuwrite(uselfubasetempdirutemp((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyusetUp�s

	$uSimpleHTTPServerTestCase.setUpcCsHz3tj|j�ytj|j�WnYnXWdtj|�XdS(N(uosuchdirucwdushutilurmtreeutempdiruBaseTestCaseutearDown(uself((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutearDown�s	u!SimpleHTTPServerTestCase.tearDowncCsY|j�}|j|�|j|j|�|j|j�|rU|j||�ndS(N(ureadu
assertTrueuassertEqualustatusuassertIsNotNoneureason(uselfuresponseustatusudataubody((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyucheck_status_and_reason�s
u0SimpleHTTPServerTestCase.check_status_and_reasoncCs�|j|jd�}|j|dd|j�|j|jd�}|j|d�|j|jd�}|j|d�|j|j�}|j|d�|jd�}|j|d�|jd�}|j|d�ttjj|jd
�d���}|jd|jd�}|j|d�tjdkr�tj	�d
kr�tj
|jd
�|j|jd�}|j|d�tj
|jd�nWdQXdS(Nu/testi�udatau/test/i�u/i-u/ThisDoesNotExistuThisDoesNotExistu
index.htmluwuposixii�u/ThisDoesNotExistu/ThisDoesNotExist/(urequestutempdir_nameucheck_status_and_reasonudatauopenuosupathujoinunameugeteuiduchmodutempdir(uselfuresponseuf((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_get�s($!u!SimpleHTTPServerTestCase.test_getcCsq|j|jddd�}|j|d�|j|jd�tt|j���|j|jd�d�dS(Nu/testumethoduHEADi�ucontent-lengthucontent-typeuapplication/octet-stream(urequestutempdir_nameucheck_status_and_reasonuassertEqualu	getheaderustrulenudata(uselfuresponse((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu	test_headsu"SimpleHTTPServerTestCase.test_headcCss|jddd�}|j|d�|jddd�}|j|d�|jddd�}|j|d�dS(Nu/umethoduFOOi�ugetuGETs(urequestucheck_status_and_reason(uselfuresponse((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_invalid_requestssu.SimpleHTTPServerTestCase.test_invalid_requestsN(
u__name__u
__module__u__qualname__uNoLogRequestHandleruSimpleHTTPRequestHandlerurequest_handlerusetUputearDownuNoneucheck_status_and_reasonutest_getu	test_headutest_invalid_requests(u
__locals__((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyuSimpleHTTPServerTestCase�s
	uSimpleHTTPServerTestCaseuD#!%s

print("Content-type: text/html")
print()
print("Hello World")
u�#!%s
import cgi

print("Content-type: text/html")
print()

form = cgi.FieldStorage()
print("%%s, %%s, %%s" %% (form.getfirst("spam"), form.getfirst("eggs"),
                          form.getfirst("bacon")))
ugeteuidu7This test can't be run reliably as root (issue #13308).cBs�|EeZdZGdd�dee�Zejjd�Zdd�Z	dd�Z
dd	�Zd
d�Zdd
�Z
dd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�ZdS(uCGIHTTPServerTestCasecBs|EeZdZdS(u%CGIHTTPServerTestCase.request_handlerN(u__name__u
__module__u__qualname__(u
__locals__((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyurequest_handler>surequest_handleruasciic$Cs�tj|�tj�|_tj�|_tjj	|jd�|_
tjj	|j
d�|_tj|j
�tj|j�d|_d|_d|_d|_tj�r�tjj	|jd�|_tjtj|j�ntj|_y|jjd�Wn)tk
r0|j�|jd�YnXtjj	|jd�|_t|jd��}|jt|j�WdQXtj|jd�tjj	|j
d	�|_t|jdd
d��}|jt|j�WdQXtj|jd�tjj	|j
d�|_t|jdd
d��}|jt |j�WdQXtj|jd�tjj	|jd�|_t|jdd
d��}|jt|j�WdQXtj|jd�tj!|j�dS(
Nucgi-binu	child-dirupythonuutf-8u0Python executable path is not encodable to utf-8unocgi.pyuwi�ufile1.pyuencodingufile2.pyufile3.py("uBaseTestCaseusetUpuosugetcwducwdutempfileumkdtempu
parent_dirupathujoinucgi_diru
cgi_child_dirumkdiruNoneu
nocgi_pathu
file1_pathu
file2_pathu
file3_pathusupportucan_symlinku	pythonexeusymlinkusysu
executableuencodeuUnicodeEncodeErrorutearDownuskipTestuopenuwriteu	cgi_file1uchmodu	cgi_file2uchdir(uselfufpufile1ufile2ufile3((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyusetUpCsJ
				

uCGIHTTPServerTestCase.setUpcCs�z�tj|j�|jtjkr8tj|j�n|jrTtj|j�n|jrptj|j�n|j	r�tj|j	�n|j
r�tj|j
�ntj|j�tj|j
�tj|j�Wdtj|�XdS(N(uosuchdirucwdu	pythonexeusysu
executableuremoveu
nocgi_pathu
file1_pathu
file2_pathu
file3_pathurmdiru
cgi_child_dirucgi_diru
parent_diruBaseTestCaseutearDown(uself((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutearDownws 				uCGIHTTPServerTestCase.tearDownc
CsTidd6td6td6dd6dd6dd6dd6d	d
6d	d	6dd6dd
6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6td6dd6dd 6td!6dd"6dd#6}x�|j�D]u\}}t|t�rt|t�r|j|tj|�q�tj|�}|j	||d$d%|||f�q�WdS(&Nu//uu..u/.//..u/u//\u/\u/.//u/cgi-bin/file1.pyucgi-bin/file1.pyu//auau/au./au/C:/u./C:/u/a/bu/a/b/u/a/b/.u	/a/b/c/..u/a/b/du/a/b/c/../du/a/b/d/fu/a/b/c/../d/e/../fu/a/b/fu/a/b/c/../d/e/../../fu/a/b/c/../d/e/.././././..//fu../a/b/c/../d/e/.././././..//fu/a/fu/a/b/c/../d/e/../../../fu//fu/a/b/c/../d/e/../../../../fu/a/b/c/../d/e/../../../../../fu/a/b/c/../d/e/../../../../f/..u /a/b/c/../d/e/../../../../f/../.umsgupath = %r
Got:    %r
Wanted: %r(
u
IndexErroruitemsu
isinstanceutypeu
issubclassu	ExceptionuassertRaisesuserveru_url_collapse_pathuassertEqual(uselfutest_vectorsupathuexpecteduactual((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_url_collapse_path�sJ
	u,CGIHTTPServerTestCase.test_url_collapse_pathcCsN|jd�}|jd|jddf|j�|jd�|jf�dS(Nu/cgi-bin/file1.pysHello Worldu	text/htmli�uContent-type(urequestuassertEqualulinesepureadu	getheaderustatus(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_headers_and_content�su.CGIHTTPServerTestCase.test_headers_and_contentcCs&|jd�}|j|jd�dS(Nu)///////////nocgi.py/../cgi-bin/nothere.shi�(urequestuassertEqualustatus(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_issue19435�su%CGIHTTPServerTestCase.test_issue19435cCsmtjjidd6dd6dd6�}idd6}|jd	d
||�}|j|j�d|j�dS(Niuspamupythonueggsi@�ubaconu!application/x-www-form-urlencodeduContent-typeu/cgi-bin/file2.pyuPOSTs1, python, 123456(uurllibuparseu	urlencodeurequestuassertEqualureadulinesep(uselfuparamsuheadersures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu	test_post�s
	
uCGIHTTPServerTestCase.test_postcCs0|jd�}|j�|j|jd�dS(Nu/cgi-bin/invalidi�(urequestureaduassertEqualustatus(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_invaliduri�s
u%CGIHTTPServerTestCase.test_invaliduricCsqidtjd�d6}|jddd|�}|jd|jdd	f|j�|jd
�|jf�dS(NsBasic s
username:passs
Authorizationu/cgi-bin/file1.pyuGETuheaderssHello Worldu	text/htmli�uContent-type(ubase64u	b64encodeurequestuassertEqualulinesepureadu	getheaderustatus(uselfuheadersures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_authorization�s
u(CGIHTTPServerTestCase.test_authorizationcCsN|jd�}|jd|jddf|j�|jd�|jf�dS(Nucgi-bin/file1.pysHello Worldu	text/htmli�uContent-type(urequestuassertEqualulinesepureadu	getheaderustatus(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_no_leading_slash�su+CGIHTTPServerTestCase.test_no_leading_slashcCsxd}|tjd<|jd�}|jd|jddf|j�|jd�|jf�|jtjd|�dS(NuTest CGI ServeruSERVER_SOFTWAREu/cgi-bin/file1.pysHello Worldu	text/htmli�uContent-type(uosuenvironurequestuassertEqualulinesepureadu	getheaderustatus(uselfu	signatureures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_os_environ_is_not_altered�s
"u4CGIHTTPServerTestCase.test_os_environ_is_not_alteredcCsN|jd�}|jd|jddf|j�|jd�|jf�dS(Nu/cgi-bin%2ffile1.pysHello Worldu	text/htmli�uContent-type(urequestuassertEqualulinesepureadu	getheaderustatus(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu#test_urlquote_decoding_in_cgi_check�su9CGIHTTPServerTestCase.test_urlquote_decoding_in_cgi_checkcCsN|jd�}|jd|jddf|j�|jd�|jf�dS(Nu/cgi-bin/child-dir/file3.pysHello Worldu	text/htmli�uContent-type(urequestuassertEqualulinesepureadu	getheaderustatus(uselfures((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_nested_cgi_path_issue21323�su5CGIHTTPServerTestCase.test_nested_cgi_path_issue21323N(u__name__u
__module__u__qualname__uNoLogRequestHandleruCGIHTTPRequestHandlerurequest_handleruosulinesepuencodeusetUputearDownutest_url_collapse_pathutest_headers_and_contentutest_issue19435u	test_postutest_invaliduriutest_authorizationutest_no_leading_slashutest_os_environ_is_not_alteredu#test_urlquote_decoding_in_cgi_checkutest_nested_cgi_path_issue21323(u
__locals__((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyuCGIHTTPServerTestCase;s4*uCGIHTTPServerTestCasecBs8|EeZdZdd�Zdd�Zdd�ZdS(uSocketlessRequestHandlercCsd|_d|_dS(NuHTTP/1.1F(uFalseu
get_calleduprotocol_version(uself((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu__init__�s	u!SocketlessRequestHandler.__init__cCsDd|_|jd�|jdd�|j�|jjd�dS(Ni�uContent-Typeu	text/htmls <html><body>Data</body></html>
T(uTrueu
get_calledu
send_responseusend_headeruend_headersuwfileuwrite(uself((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyudo_GET�s
	

uSocketlessRequestHandler.do_GETcGsdS(N((uselfuformatuargs((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyulog_message�su$SocketlessRequestHandler.log_messageN(u__name__u
__module__u__qualname__u__init__udo_GETulog_message(u
__locals__((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyuSocketlessRequestHandler�suSocketlessRequestHandlercBs |EeZdZdd�ZdS(u!RejectingSocketlessRequestHandlercCs|jd�dS(Ni�F(u
send_erroruFalse(uself((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyuhandle_expect_100�s
u3RejectingSocketlessRequestHandler.handle_expect_100N(u__name__u
__module__u__qualname__uhandle_expect_100(u
__locals__((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu!RejectingSocketlessRequestHandler�su!RejectingSocketlessRequestHandlercBsJ|EeZdZdd�Zdd�Zdd�Zedd��Zd	S(
uAuditableBytesIOcCs
g|_dS(N(udatas(uself((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu__init__suAuditableBytesIO.__init__cCs|jj|�dS(N(udatasuappend(uselfudata((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyuwritesuAuditableBytesIO.writecCsdj|j�S(Ns(ujoinudatas(uself((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyugetDatasuAuditableBytesIO.getDatacCs
t|j�S(N(ulenudatas(uself((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu	numWrites
suAuditableBytesIO.numWritesN(u__name__u
__module__u__qualname__u__init__uwriteugetDataupropertyu	numWrites(u
__locals__((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyuAuditableBytesIO�suAuditableBytesIOcBs�|EeZdZdZejd�Zdd�Zdd�Zdd�Z	d	d
�Z
dd�Zd
d�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%S(&uBaseHTTPRequestHandlerTestCaseurTest the functionality of the BaseHTTPServer.

       Test the support for the Expect 100-continue header.
       sHTTP/1.[0-9]+ 200 OKcCst�|_dS(N(uSocketlessRequestHandleruhandler(uself((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyusetUpsu$BaseHTTPRequestHandlerTestCase.setUpcCsQt|�}t�}||j_||j_|jj�|jd�|j�S(Ni(uBytesIOuhandlerurfileuwfileuhandle_one_requestuseeku	readlines(uselfumessageuinputuoutput((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyusend_typical_requests	

u3BaseHTTPRequestHandlerTestCase.send_typical_requestcCs|j|jj�dS(N(u
assertTrueuhandleru
get_called(uself((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyuverify_get_called#su0BaseHTTPRequestHandlerTestCase.verify_get_calledcs>x7dD]/�|jt�fdd�|D��d�qWdS(NsServer: sDate: sContent-Type: c3s|]}|j��VqdS(N(u
startswith(u.0uh(u	fieldName(u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu	<genexpr>(suIBaseHTTPRequestHandlerTestCase.verify_expected_headers.<locals>.<genexpr>i(sServer: sDate: sContent-Type: (uassertEqualusum(uselfuheaders((u	fieldNameu:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyuverify_expected_headers&s
u6BaseHTTPRequestHandlerTestCase.verify_expected_headerscCs#|jj|�}|j|�dS(N(uHTTPResponseMatchusearchuassertIsNotNone(uselfuresponseumatch((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyuverify_http_server_response*su:BaseHTTPRequestHandlerTestCase.verify_http_server_responsecCsY|jd�}|j|d�|j|dd��|j�|j|dd�dS(NsGET / HTTP/1.1

iis <html><body>Data</body></html>
i����i����(usend_typical_requestuverify_http_server_responseuverify_expected_headersuverify_get_calleduassertEqual(uselfuresult((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu
test_http_1_1.s

u,BaseHTTPRequestHandlerTestCase.test_http_1_1cCsY|jd�}|j|d�|j|dd��|j�|j|dd�dS(NsGET / HTTP/1.0

iis <html><body>Data</body></html>
i����i����(usend_typical_requestuverify_http_server_responseuverify_expected_headersuverify_get_calleduassertEqual(uselfuresult((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu
test_http_1_05s

u,BaseHTTPRequestHandlerTestCase.test_http_1_0cCsG|jd�}|jt|�d�|j|dd�|j�dS(NsGET / HTTP/0.9

iis <html><body>Data</body></html>
(usend_typical_requestuassertEqualulenuverify_get_called(uselfuresult((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu
test_http_0_9<su,BaseHTTPRequestHandlerTestCase.test_http_0_9cCsY|jd�}|j|d�|j|dd��|j�|j|dd�dS(Ns(GET / HTTP/1.0
Expect: 100-continue

iis <html><body>Data</body></html>
i����i����(usend_typical_requestuverify_http_server_responseuverify_expected_headersuverify_get_calleduassertEqual(uselfuresult((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_with_continue_1_0Bs

u5BaseHTTPRequestHandlerTestCase.test_with_continue_1_0cCs�|jd�}|j|dd�|j|dd�|j|dd�|j|dd	��|j�|j|d
d�dS(Ns(GET / HTTP/1.1
Expect: 100-continue

isHTTP/1.1 100 Continue
is
isHTTP/1.1 200 OK
s <html><body>Data</body></html>
i����i����(usend_typical_requestuassertEqualuverify_expected_headersuverify_get_called(uselfuresult((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_with_continue_1_1Is
u5BaseHTTPRequestHandlerTestCase.test_with_continue_1_1cCsotd�}t�}t�}||_||_d|_d|_d|_|j	d�|j
|jd�dS(NsGET / HTTP/1.1

uHTTP/1.1ui�i(uBytesIOuAuditableBytesIOuSocketlessRequestHandlerurfileuwfileurequest_versionurequestlineuNoneucommandu
send_erroruassertEqualu	numWrites(uselfuinputuoutputuhandler((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu#test_header_buffering_of_send_errorRs							
uBBaseHTTPRequestHandlerTestCase.test_header_buffering_of_send_errorcCsztd�}t�}t�}||_||_d|_|jd�|j|jd�|j	�|j|jd�dS(NsGET / HTTP/1.1

uHTTP/1.1i�ii(
uBytesIOuAuditableBytesIOuSocketlessRequestHandlerurfileuwfileurequest_versionusend_response_onlyuassertEqualu	numWritesuend_headers(uselfuinputuoutputuhandler((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu+test_header_buffering_of_send_response_only`s					

uJBaseHTTPRequestHandlerTestCase.test_header_buffering_of_send_response_onlycCs�td�}t�}t�}||_||_d|_|jdd�|jdd�|j|jd�|j	�|j|j
�d�|j|jd�dS(	NsGET / HTTP/1.1

uHTTP/1.1uFooufooubarisFoo: foo
bar: bar

i(uBytesIOuAuditableBytesIOuSocketlessRequestHandlerurfileuwfileurequest_versionusend_headeruassertEqualu	numWritesuend_headersugetData(uselfuinputuoutputuhandler((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu$test_header_buffering_of_send_headerns					
uCBaseHTTPRequestHandlerTestCase.test_header_buffering_of_send_headercCs�dd�}td�}t�}||j_||j_d|j_|jj�|j||�d�||�jd�}|j|dd�|j|d	d�|j|d
d�dS(NcSs6|j�}|jd�|j�}|j|�|S(Ni(utelluseekuread(ufuposudata((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu_readAndReseek�s


u[BaseHTTPRequestHandlerTestCase.test_header_unbuffered_when_continue.<locals>._readAndReseeks(GET / HTTP/1.1
Expect: 100-continue

uHTTP/1.1ss
isHTTP/1.1 100 ContinueiisHTTP/1.1 200 OK(	uBytesIOuhandlerurfileuwfileurequest_versionuhandle_one_requestuassertNotEqualusplituassertEqual(uselfu_readAndReseekuinputuoutputuresult((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu$test_header_unbuffered_when_continue~s	
uCBaseHTTPRequestHandlerTestCase.test_header_unbuffered_when_continuecCs�|j}t�|_|jd�}|j|dd�|j|dd��|j|jj�|jtdd�|dd�D��d�||_dS(	Ns(GET / HTTP/1.1
Expect: 100-continue

is!HTTP/1.1 417 Expectation Failed
icss|]}|dkVqdS(sConnection: close
N((u.0ur((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu	<genexpr>�suMBaseHTTPRequestHandlerTestCase.test_with_continue_rejected.<locals>.<genexpr>i����i����(uhandleru!RejectingSocketlessRequestHandlerusend_typical_requestuassertEqualuverify_expected_headersuassertFalseu
get_calledusum(uselfu
usual_handleruresult((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_with_continue_rejected�s	-u:BaseHTTPRequestHandlerTestCase.test_with_continue_rejectedcCsB|jddd�}|j|dd�|j|jj�dS(NsGET sxiis#HTTP/1.1 414 Request-URI Too Long
(usend_typical_requestuassertEqualuassertFalseuhandleru
get_called(uselfuresult((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_request_length�su2BaseHTTPRequestHandlerTestCase.test_request_lengthcCsF|jdddd�}|j|dd�|j|jj�dS(NsGET / HTTP/1.1
X-Foo: barsris

isHTTP/1.1 400 Line too long
(usend_typical_requestuassertEqualuassertFalseuhandleru
get_called(uselfuresult((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_header_length�su1BaseHTTPRequestHandlerTestCase.test_header_lengthN(u__name__u
__module__u__qualname__u__doc__ureucompileuHTTPResponseMatchusetUpusend_typical_requestuverify_get_calleduverify_expected_headersuverify_http_server_responseu
test_http_1_1u
test_http_1_0u
test_http_0_9utest_with_continue_1_0utest_with_continue_1_1u#test_header_buffering_of_send_erroru+test_header_buffering_of_send_response_onlyu$test_header_buffering_of_send_headeru$test_header_unbuffered_when_continueutest_with_continue_rejectedutest_request_lengthutest_header_length(u
__locals__((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyuBaseHTTPRequestHandlerTestCases&		uBaseHTTPRequestHandlerTestCasecBsJ|EeZdZdZdd�Zdd�Zdd�Zdd	�Zd
S(u SimpleHTTPRequestHandlerTestCaseu Test url parsing cCs:tj�|_tjj|jd�|_t�|_dS(Nufilename(uosugetcwdu
translatedupathujoinuSocketlessRequestHandleruhandler(uself((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyusetUp�su&SimpleHTTPRequestHandlerTestCase.setUpcCss|jjd�}|j||j�|jjd�}|j||j�|jjd�}|j||j�dS(Nu	/filenameu/filename?foo=baru/filename?a=b&spam=eggs#zot(uhandlerutranslate_pathuassertEqualu
translated(uselfupath((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_query_arguments�su5SimpleHTTPRequestHandlerTestCase.test_query_argumentscCsN|jjd�}|j||j�|jjd�}|j||j�dS(Nu
//filenameu//filename?foo=bar(uhandlerutranslate_pathuassertEqualu
translated(uselfupath((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_start_with_double_slash�su=SimpleHTTPRequestHandlerTestCase.test_start_with_double_slashc
Cstjtjdt���|jjd�}|jtjtj�}|j	||j
�|jjd�}|jtjtj�}|j	||j
�|jjd�}|jtjtj�}|j	||j
�|jjd�}|jtjtj�}|j	||j
�WdQXdS(Nupathuc:c:c:foo/filenameu\c:../filenameuc:\c:..\foo/filenameuc:c:foo\c:c:bar/filename(usupportu	swap_attruserveruosuntpathuhandlerutranslate_pathureplaceusepuassertEqualu
translated(uselfupath((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyutest_windows_colon�su3SimpleHTTPRequestHandlerTestCase.test_windows_colonN(u__name__u
__module__u__qualname__u__doc__usetUputest_query_argumentsutest_start_with_double_slashutest_windows_colon(u
__locals__((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu SimpleHTTPRequestHandlerTestCase�s
u SimpleHTTPRequestHandlerTestCasecCs>tj�}ztjttttt�Wdtj	|�XdS(N(
uosugetcwdusupporturun_unittestuBaseHTTPRequestHandlerTestCaseuBaseHTTPServerTestCaseuSimpleHTTPServerTestCaseuCGIHTTPServerTestCaseu SimpleHTTPRequestHandlerTestCaseuchdir(uverboseucwd((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu	test_main�su	test_mainu__main__(.u__doc__uhttp.serveruBaseHTTPRequestHandleru
HTTPServeruSimpleHTTPRequestHandleruCGIHTTPRequestHandleruhttpuserveruosusysureubase64untpathushutiluurllib.parseuurllibuhttp.clientutempfileuiouBytesIOuunittestutestusupportu
import_moduleu	threadinguNoLogRequestHandleruThreaduTestServerThreaduTestCaseuBaseTestCaseuBaseHTTPServerTestCaseuSimpleHTTPServerTestCaseu	cgi_file1u	cgi_file2uskipIfuhasattrugeteuiduCGIHTTPServerTestCaseuSocketlessRequestHandleru!RejectingSocketlessRequestHandleruAuditableBytesIOuBaseHTTPRequestHandlerTestCaseu SimpleHTTPRequestHandlerTestCaseuNoneu	test_mainu__name__(((u:/opt/alt/python33/lib64/python3.3/test/test_httpservers.pyu<module>sB"	�T$��(