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_htmlparser.cpython-33.pyo

�
��f�zc@s�dZddlZddlZddlZddlmZGdd�dejj�Z	Gdd�de	�Z
Gdd	�d	ej�ZGd
d�de�Z
Gdd
�d
e
�ZGdd�de�ZGdd�de�Zedkr�ej�ndS(uTests for HTMLParser.py.iN(usupportcBs�|EeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�ZdS(uEventCollectorcOs5g|_|jj|_tjjj|||�dS(N(ueventsuappenduhtmluparseru
HTMLParseru__init__(uselfuargsukw((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu__init__s	uEventCollector.__init__cCs�g}d}xm|jD]b}|d}||ko=dknred|dd|df|d<n
|j|�|}qW||_|S(Niudataii����i����(uNoneueventsuappend(uselfuLuprevtypeueventutype((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu
get_eventss
#

	uEventCollector.get_eventscCs|jd||f�dS(Nustarttag(uappend(uselfutaguattrs((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyuhandle_starttag!suEventCollector.handle_starttagcCs|jd||f�dS(Nustartendtag(uappend(uselfutaguattrs((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyuhandle_startendtag$su!EventCollector.handle_startendtagcCs|jd|f�dS(Nuendtag(uappend(uselfutag((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu
handle_endtag'suEventCollector.handle_endtagcCs|jd|f�dS(Nucomment(uappend(uselfudata((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyuhandle_comment,suEventCollector.handle_commentcCs|jd|f�dS(Nucharref(uappend(uselfudata((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyuhandle_charref/suEventCollector.handle_charrefcCs|jd|f�dS(Nudata(uappend(uselfudata((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyuhandle_data2suEventCollector.handle_datacCs|jd|f�dS(Nudecl(uappend(uselfudata((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyuhandle_decl5suEventCollector.handle_declcCs|jd|f�dS(Nu	entityref(uappend(uselfudata((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyuhandle_entityref8suEventCollector.handle_entityrefcCs|jd|f�dS(Nupi(uappend(uselfudata((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu	handle_pi;suEventCollector.handle_picCs|jd|f�dS(Nuunknown decl(uappend(uselfudecl((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyuunknown_decl>suEventCollector.unknown_declN(u__name__u
__module__u__qualname__u__init__u
get_eventsuhandle_starttaguhandle_startendtagu
handle_endtaguhandle_commentuhandle_charrefuhandle_datauhandle_decluhandle_entityrefu	handle_piuunknown_decl(u
__locals__((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyuEventCollector	suEventCollectorcBs |EeZdZdd�ZdS(uEventCollectorExtracCs0tj|||�|jd|j�f�dS(Nu
starttag_text(uEventCollectoruhandle_starttaguappenduget_starttag_text(uselfutaguattrs((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyuhandle_starttagDsu#EventCollectorExtra.handle_starttagN(u__name__u
__module__u__qualname__uhandle_starttag(u
__locals__((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyuEventCollectorExtraBsuEventCollectorExtracBsG|EeZdZdd�Zd	dd�Zdd�Zdd�Zd	S(
uTestCaseBasecCs
t�dS(N(uNotImplementedError(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu
get_collectorKsuTestCaseBase.get_collectorcCs�|dkr|j�}n|}x|D]}|j|�q(W|j�|j�}||kr�|jdtj|�dtj|��ndS(Nu8received events did not match expected events
Expected:
u
Received:
(uNoneu
get_collectorufeeducloseu
get_eventsufailupprintupformat(uselfusourceuexpected_eventsu	collectoruparserusuevents((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu
_run_checkNs

uTestCaseBase._run_checkcCs|j||t��dS(N(u
_run_checkuEventCollectorExtra(uselfusourceuevents((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu_run_check_extra[suTestCaseBase._run_check_extracs/|�fdd�}�jtjj|�dS(Ncs'�j�}|j|�|j�dS(N(u
get_collectorufeeduclose(usourceuparser(uself(u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyuparse_s
u(TestCaseBase._parse_error.<locals>.parse(uassertRaisesuhtmluparseruHTMLParseError(uselfusourceuparse((uselfu9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu_parse_error^suTestCaseBase._parse_errorN(u__name__u
__module__u__qualname__u
get_collectoruNoneu
_run_checku_run_check_extrau_parse_error(u
__locals__((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyuTestCaseBaseIs
uTestCaseBasecBs|EeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)S(*uHTMLParserStrictTestCasec
Cs3tjdtfdd��tdd�SWdQXdS(NuuquiteustrictFT(usupportucheck_warningsuDeprecationWarninguFalseuEventCollectoruTrue(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu
get_collectorhsu&HTMLParserStrictTestCase.get_collectorcCs*|jddg�|jddg�dS(Nu<?processing instruction>upiuprocessing instructionu<?processing instruction ?>uprocessing instruction ?(upiuprocessing instruction(upiuprocessing instruction ?(u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu test_processing_instruction_onlyls	
	u9HTMLParserStrictTestCase.test_processing_instruction_onlycCs_|jddddddgfdddddddddgfd d!d"d#d$d%d&g�dS('Nu�
<!DOCTYPE html PUBLIC 'foo'>
<HTML>&entity;&#32;
<!--comment1a
-></foo><bar>&lt;<?pi?></foo<bar
comment1b-->
<Img sRc='Bar' isMAP>sample
text
&#x201C;
<!--comment2a-- --comment2b-->
</Html>
udatau
udecluDOCTYPE html PUBLIC 'foo'ustarttaguhtmlu	entityrefuentityucharrefu32ucommentu4comment1a
-></foo><bar>&lt;<?pi?></foo<bar
comment1buimgusrcuBaruismapusample
text
ux201Cucomment2a-- --comment2buendtag(udatau
(udecluDOCTYPE html PUBLIC 'foo'(udatau
(u	entityrefuentity(ucharrefu32(udatau
(ucommentu4comment1a
-></foo><bar>&lt;<?pi?></foo<bar
comment1b(udatau
(usrcuBar(uismapN(udatausample
text
(ucharrefux201C(udatau
(ucommentucomment2a-- --comment2b(udatau
(uendtaguhtml(udatau
(u
_run_checkuNone(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_simple_htmlts&u)HTMLParserStrictTestCase.test_simple_htmlcCsK|jdddgfd	d
g�|jdgddgfddg�dS(
Nu
<p>&#bad;</p>ustarttagupudatau&#bad;uendtagu<div>&#bad;</div>udiv(udatau&#bad;(uendtagup(udatau&#bad;(uendtagudiv(u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_malformatted_charref�s	
u2HTMLParserStrictTestCase.test_malformatted_charrefcCs|jdddg�dS(Nu&entityref foou	entityrefudatau foo(u	entityrefu	entityref(udatau foo(u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_unclosed_entityref�s	u0HTMLParserStrictTestCase.test_unclosed_entityrefcCs2|jdddgfddgfddg�dS(Nu<a><b></a></b>ustarttaguaubuendtag(uendtagua(uendtagub(u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_bad_nesting�s
	u)HTMLParserStrictTestCase.test_bad_nestingcCs|jddg�dS(Nu#this text & contains & ampersands &udata(udatau#this text & contains & ampersands &(u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_bare_ampersands�s	u-HTMLParserStrictTestCase.test_bare_ampersandscCs|jddg�dS(Nu.this < text > contains < bare>pointy< bracketsudata(udatau.this < text > contains < bare>pointy< brackets(u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_bare_pointy_brackets�s	u2HTMLParserStrictTestCase.test_bare_pointy_bracketscCs|jd�dS(Nu"<!spacer type="block" height="25">(u_parse_error(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_illegal_declarations�su2HTMLParserStrictTestCase.test_illegal_declarationscCsB|jddddgfg�|jdddd	gfg�dS(
Nu	<a b='<'>ustarttaguaubu<u	<a b='>'>u>(ubu<(ubu>(u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_starttag_end_boundary�su3HTMLParserStrictTestCase.test_starttag_end_boundarycCs+ddd*gfg}|jdg|�|jddg|�|jdd	g|�|jd
dg|�|jdd
g|�|jddg|�ddd+gfg}|jdg|�|jddg|�|jddg|�|jd
dg|�|jdd
g|�|jddg|�d,g}|jddg|�|jddg|�|jddg|�|jddg|�|jdd g|�|jd!d"g|�|jd#d$g|�|jd%d&g|�|jd'd(g|�|jd)dg|�|jddg|�dS(-Nustarttaguaubu<u	<a b='<'>u<a ub='<'>u<a bu='<'>u<a b=u'<'>u<a b='<u'>u<a b='<'u>u	<a b='>'>ub='>'>u='>'>u'>'>u<a b='>u<a b='>'ucommentuabcuu
<!--abc-->u	!--abc-->u<!u--abc-->u<!-u-abc-->u<!--uabc-->u<!--aubc-->u<!--abuc-->u<!--abcu-->u<!--abc-u->u	<!--abc--(ubu<(ubu>(ucommentuabc(u
_run_check(uselfuoutput((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_buffer_artefacts�s4	u.HTMLParserStrictTestCase.test_buffer_artefactscCs�|jd�|jd�|jd�|jd�|jd�|jd�|jd�|jd�|jd	�|jd
�|jd�|jd�|jd
�|jd�|jd�|jd�|jd�dS(Nu</>u</$>u</u</au<a<a>u</a<a>u<!u<au<a foo='bar'u<a foo='baru
<a foo='>'u	<a foo='>u<a$>u<a$b>u<a$b/>u<a$b  >u<a$b  />(u_parse_error(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_starttag_junk_chars�s"















u1HTMLParserStrictTestCase.test_starttag_junk_charsc
CsZddddddddd	d
g
}x/|D]'}|jd|dd
|fg�q+WdS(NuHTMLuOHTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"u[HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"ubhtml PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"ufhtml PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"uYmath PUBLIC "-//W3C//DTD MathML 2.0//EN" "http://www.w3.org/Math/DTD/mathml2/mathml2.dtd"u�html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0 plus SVG 1.1//EN" "http://www.w3.org/2002/04/xhtml-math-svg/xhtml-math-svg.dtd"uWsvg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"u'html PUBLIC "-//IETF//DTD HTML 2.0//EN"u,html PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"u
<!DOCTYPE %s>udecluDOCTYPE (u
_run_check(uselfudtdsudtd((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_valid_doctypes�s	

u,HTMLParserStrictTestCase.test_valid_doctypescCs|jd�dS(Nu<!DOCTYPE foo $ >(u_parse_error(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_declaration_junk_charssu4HTMLParserStrictTestCase.test_declaration_junk_charscCsm|jdddgfg�|jdddgfdg�|jdddgfdddgfd
g�dS(Nu<p/>ustartendtagupu<p></p>ustarttaguendtagu<p><img src='foo' /></p>uimgusrcufoo(uendtagup(usrcufoo(uendtagup(u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_startendtags		
	u)HTMLParserStrictTestCase.test_startendtagcCs5d}|j|ddd	d
gfd|fg�dS(Nu <foo:bar   
   one="1"	two=2   >ustarttagufoo:baruoneu1utwou2u
starttag_text(uoneu1(utwou2(u_run_check_extra(uselfus((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_get_starttag_texts	u/HTMLParserStrictTestCase.test_get_starttag_textcCs�ddddddddd	d
dg}dd
ddddg}xq|D]i}x`|D]X}|j�}djd|d|�}|j|d|gfd|fd|fg�qSWqFWdS(Nu*<!-- not a comment --> &not-an-entity-ref;u<not a='start tag'>u<a href="" /> <p> <span></span>ufoo = "</scr" + "ipt>";ufoo = "</SCRIPT" + ">";ufoo = <
/script> u*<!-- document.write("</scr" + "ipt>"); -->u�
//<![CDATA[
document.write('<s'+'cript type="text/javascript" src="http://www.example.org/r='+new Date().getTime()+'"><\/s'+'cript>');
//]]>u 
<!-- //
var foo = 3.14;
// -->
ufoo = "</sty" + "le>";u<!-- ☃ -->uscriptustyleuSCRIPTuSTYLEuScriptuStyleu <{element}>{content}</{element}>uelementucontentustarttagudatauendtag(uloweruformatu
_run_check(uselfucontentsuelementsucontentuelementu
element_lowerus((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_cdata_content#s(	

		u+HTMLParserStrictTestCase.test_cdata_contentcCs�Gdd�dt�}d}x�dddddd	gD]g}|j�j�}d
jd|d|�}|j|d
|gfd|fd|fgd|��q5WdS(NcBs |EeZdZdd�ZdS(uHHTMLParserStrictTestCase.test_cdata_with_closing_tags.<locals>.CollectorcSs|jS(N(uevents(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu
get_eventsHsuSHTMLParserStrictTestCase.test_cdata_with_closing_tags.<locals>.Collector.get_eventsN(u__name__u
__module__u__qualname__u
get_events(u
__locals__((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu	CollectorGsu	Collectoru�<!-- not a comment --> &not-an-entity-ref;
                  <a href="" /> </p><p> <span></span></style>
                  '</script' + '>'u scriptuscript u script u
scriptuscript
u
script
u<script>{content}</{element}>uelementucontentustarttagudatauendtagu	collector(uEventCollectorulowerustripuformatu
_run_check(uselfu	Collectorucontentuelementu
element_lowerus((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_cdata_with_closing_tagsBs		u5HTMLParserStrictTestCase.test_cdata_with_closing_tagscCs5d}d
ddd
dddg}|j||�dS(Nu�<!-- I'm a valid comment --><!--me too!--><!------><!----><!----I have many hyphens----><!-- I have a > in the middle --><!-- and I have -- in the middle! -->ucommentu I'm a valid comment ume too!u--uu--I have many hyphens--u I have a > in the middle u and I have -- in the middle! (ucommentu I'm a valid comment (ucommentume too!(ucommentu--(ucommentu(ucommentu--I have many hyphens--(ucommentu I have a > in the middle (ucommentu and I have -- in the middle! (u
_run_check(uselfuhtmluexpected((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu
test_commentsXs	u&HTMLParserStrictTestCase.test_commentscCs)d}dddg}|j||�dS(	Nus<!--[if IE & !(lte IE 8)]>aren't<![endif]--><!--[if IE 8]>condcoms<![endif]--><!--[if lte IE 7]>pretty?<![endif]-->ucommentu%[if IE & !(lte IE 8)]>aren't<![endif]uf IE 8]>condcoms<![endif]u[if lte IE 7]>pretty?<![endif](ucommentu%[if IE & !(lte IE 8)]>aren't<![endif](ucommentuf IE 8]>condcoms<![endif](ucommentu[if lte IE 7]>pretty?<![endif](u
_run_check(uselfuhtmluexpected((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu
test_condcomsis
	u&HTMLParserStrictTestCase.test_condcomsN(u__name__u
__module__u__qualname__u
get_collectoru test_processing_instruction_onlyutest_simple_htmlutest_malformatted_charrefutest_unclosed_entityrefutest_bad_nestingutest_bare_ampersandsutest_bare_pointy_bracketsutest_illegal_declarationsutest_starttag_end_boundaryutest_buffer_artefactsutest_starttag_junk_charsutest_valid_doctypesutest_declaration_junk_charsutest_startendtagutest_get_starttag_textutest_cdata_contentutest_cdata_with_closing_tagsu
test_commentsu
test_condcoms(u
__locals__((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyuHTMLParserStrictTestCasefs( 
uHTMLParserStrictTestCasecBs�|EeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!S("uHTMLParserTolerantTestCasecCs
tdd�S(NustrictF(uEventCollectoruFalse(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu
get_collectorusu(HTMLParserTolerantTestCase.get_collectorcCsG|jddddgfddddd
dgfddddg	�dS(NuF<html <html>te>>xt&a<<bc</a></html>
<img src="URL><//img></html</html>ustarttaguhtmlu<htmludataute>>xtu	entityrefuau<ubc<uendtagu
<img src="URL>ucommentu/imguhtml<(u<htmlN(udataute>>xt(u	entityrefua(udatau<(uaN(uendtaguhtml(udatau
<img src="URL>(ucommentu/img(uendtaguhtml<(u
_run_checkuNone(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_tolerant_parsingxs	u0HTMLParserTolerantTestCase.test_tolerant_parsingcCsz|jdg�|jddg�|jddg�|jddg�|jdd	d
gfg�|jddg�|jd
dg�|jdd g�|jdd!g�|jdd"g�|jdd#g�|jdd$g�|jdd	dgfg�|jdd	dgfg�|jdddgfg�|jdd	dgfg�|jdddgfg�dS(%Nu</>u</$>ucommentu$u</udatau</au<a<a>ustarttagua<au</a<a>uendtagu<!u<au<a foo='bar'u<a foo='baru
<a foo='>'u	<a foo='>u<a$>ua$u<a$b>ua$bu<a$b/>ustartendtagu<a$b  >u<a$b  />(ucommentu$(udatau</(udatau</a(uendtagua<a(udatau<!(udatau<a(udatau<a foo='bar'(udatau<a foo='bar(udatau
<a foo='>'(udatau	<a foo='>(u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_starttag_junk_chars�s"u3HTMLParserTolerantTestCase.test_starttag_junk_charscCs%|jddddgfg�d}ddddddddd d!gfg}|j||�d}ddd"d#d$gfddd%d&d'gfg}|j||�d}ddgfddgfddgfddgfddgfddgfddgfddgfg}|j||�dS((Nu<a foo="var"/>ustartendtaguaufoouvaruj<img width=902 height=250px src="/sites/default/files/images/homepage/foo.jpg" /*what am I doing here*/ />uimguwidthu902uheightu250pxusrcu,/sites/default/files/images/homepage/foo.jpgu*whatuamuiudoinguhere*u9<a / /foo/ / /=/ / /bar/ / /><a / /foo/ / /=/ / /bar/ / >u=ubarustarttaguD<meta><meta / ><meta // ><meta / / ><meta/><meta /><meta //><meta//>umeta(ufoouvar(uwidthu902(uheightu250px(usrcu,/sites/default/files/images/homepage/foo.jpg(u*whatN(uamN(uiN(udoingN(uhere*N(ufooN(u=N(ubarN(ufooN(u=N(ubarN(u
_run_checkuNone(uselfuhtmluexpected((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_slashes_in_starttag�s$	u3HTMLParserTolerantTestCase.test_slashes_in_starttagcCs|jddg�dS(Nu<!DOCTYPE foo $ >udecluDOCTYPE foo $ (udecluDOCTYPE foo $ (u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_declaration_junk_chars�su6HTMLParserTolerantTestCase.test_declaration_junk_charscCs|jddg�dS(Nu"<!spacer type="block" height="25">ucommentuspacer type="block" height="25"(ucommentuspacer type="block" height="25"(u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_illegal_declarations�s	u4HTMLParserTolerantTestCase.test_illegal_declarationscCs�d}ddgfddd#d$gfdd	d%d&d'gfddgfddd(gfddd)gfd*ddd+gfddd,gfd-d.d/d0ddd1gfddd2gfd3d4d5d6g}|j||�dS(7Nu�<html><body bgcolor=d0ca90 text='181008'><table cellspacing=0 cellpadding=1 width=100% ><tr><td align=left><font size=-1>- <a href=/rabota/><span class=en> software-and-i</span></a>- <a href='/1/'><span class=en> library</span></a></table>ustarttaguhtmlubodyubgcolorud0ca90utextu181008utableucellspacingu0ucellpaddingu1uwidthu100%utrutdualignuleftufontusizeu-1udatau- uauhrefu/rabota/uspanuclassuenu software-and-iuendtagu/1/u library(ubgcolorud0ca90(utextu181008(ucellspacingu0(ucellpaddingu1(uwidthu100%(ualignuleft(usizeu-1(udatau- (uhrefu/rabota/(uclassuen(udatau software-and-i(uendtaguspan(uendtagua(udatau- (uhrefu/1/(uclassuen(udatau library(uendtaguspan(uendtagua(uendtagutable(u
_run_check(uselfuhtmluexpected((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_with_unquoted_attributes�su8HTMLParserTolerantTestCase.test_with_unquoted_attributescCs)|jdddd	d
dgfg�dS(Nu7<form action="/xxx.php?a=1&amp;b=2&amp", method="post">ustarttaguformuactionu/xxx.php?a=1&b=2&u,umethodupost(uactionu/xxx.php?a=1&b=2&(u,N(umethodupost(u
_run_checkuNone(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_comma_between_attributes�s	u8HTMLParserTolerantTestCase.test_comma_between_attributescCs#|jddddgfg�dS(Nu<form action=bogus|&#()value>ustarttaguformuactionubogus|&#()value(uactionubogus|&#()value(u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu-test_weird_chars_in_unquoted_attribute_values�s	uHHTMLParserTolerantTestCase.test_weird_chars_in_unquoted_attribute_valuescCs�d}ddgfd
ddgfdddgfdddgfd
ddgfdddgfddgfg}|j||�dS(Nun<br></label</p><br></div end tmAd-leaderBoard><br></<h4><br></li class="unit"><br></li
						</ul><br></><br>ustarttagubruendtagulabel<udivucommentu<h4uli(uendtagulabel<(uendtagudiv(ucommentu<h4(uendtaguli(uendtaguli(u
_run_check(uselfuhtmluexpected((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_invalid_end_tags�su0HTMLParserTolerantTestCase.test_invalid_end_tagscCs5d}ddgfdd	d
g}|j||�dS(Nu(<b>This</b attr=">"> confuses the parserustarttagubudatauThisuendtagu"> confuses the parser(udatauThis(uendtagub(udatau"> confuses the parser(u
_run_check(uselfuhtmluexpected((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_broken_invalid_end_tag�s	u6HTMLParserTolerantTestCase.test_broken_invalid_end_tagcCs�d}dddgfddgfddd	dgfdddddgfdddgfdd d!d"g}|j||�d}ddd#d$d%gfddgfd&dd	d'gfd(d)g}|j||�dS(*Nu[<div style=""    ><b>The <a href="some_url">rain</a> <br /> in <span>Spain</span></b></div>ustarttagudivustyleuubudatauThe uauhrefusome_urlurainuendtagu ustartendtagubru in uspanuSpainu><div style="", foo = "bar" ><b>The <a href="some_url">rain</a>u,ufooubar(ustyleu(udatauThe (uhrefusome_url(udataurain(uendtagua(udatau (udatau in (udatauSpain(uendtaguspan(uendtagub(uendtagudiv(ustyleu(u,N(ufooubar(udatauThe (uhrefusome_url(udataurain(uendtagua(u
_run_checkuNone(uselfuhtmluexpected((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu$test_correct_detection_of_start_tagss0		u?HTMLParserTolerantTestCase.test_correct_detection_of_start_tagscCsjddgfddgfdd
ddgfd
ddgfg}x$|D]\}}|j||�qFWdS(Nua&udataua&buabua&b uau	entityrefubu ua&b;(udataua&(udatauab(udataua(u	entityrefub(udatau (udataua(u	entityrefub(u
_run_check(uselfudatauhtmluexpected((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_EOF_in_charref)su.HTMLParserTolerantTestCase.test_EOF_in_charrefcCs�|j�}|j|jd�d�|j|jd�d�|j|jdd�dd�|j|jd�d�|j|jd	�d	�dS(
Nu&#bad;u&#0038;u&u&#123; iu{ u2&Eacuteric&Eacute;ric&alphacentauri&alpha;centauriu"ÉricÉric&alphacentauriαcentauriu&co;(u
get_collectoruassertEqualuunescape(uselfup((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_unescape_function7s!u1HTMLParserTolerantTestCase.test_unescape_functioncCs2d}d	d
ddd
dg}|j||�dS(Nu�<! not really a comment ><! not a comment either --><! -- close enough --><!><!<-- this was an empty comment><!!! another bogus comment !!!>ucommentu not really a comment u not a comment either --u -- close enough --uu<-- this was an empty commentu!! another bogus comment !!!(ucommentu not really a comment (ucommentu not a comment either --(ucommentu -- close enough --(ucommentu(ucommentu<-- this was an empty comment(ucommentu!! another bogus comment !!!(u
_run_check(uselfuhtmluexpected((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_broken_commentsCs	u/HTMLParserTolerantTestCase.test_broken_commentscCs�d}dddddd	dgfdddd
dgfdd ddgfd!d"d#d$dd
d%gfd&g}|j||�dS('Nu�<![if !(IE)]>broken condcom<![endif]><![if ! IE]><link href="favicon.tiff"/><![endif]><![if !IE 6]><img src="firefox.png" /><![endif]><![if !ie 6]><b>foo</b><![endif]><![if (!IE)|(lt IE 9)]><img src="mammoth.bmp" /><![endif]>uunknown decluif !(IE)udataubroken condcomuendifuif ! IEustartendtagulinkuhrefufavicon.tiffuif !IE 6uimgusrcufirefox.pnguif !ie 6ustarttagubufoouendtaguif (!IE)|(lt IE 9)umammoth.bmp(uunknown decluif !(IE)(udataubroken condcom(uunknown decluendif(uunknown decluif ! IE(uhrefufavicon.tiff(uunknown decluendif(uunknown decluif !IE 6(usrcufirefox.png(uunknown decluendif(uunknown decluif !ie 6(udataufoo(uendtagub(uunknown decluendif(uunknown decluif (!IE)|(lt IE 9)(usrcumammoth.bmp(uunknown decluendif(u
_run_check(uselfuhtmluexpected((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_broken_condcomsSs&	u/HTMLParserTolerantTestCase.test_broken_condcomsN(u__name__u
__module__u__qualname__u
get_collectorutest_tolerant_parsingutest_starttag_junk_charsutest_slashes_in_starttagutest_declaration_junk_charsutest_illegal_declarationsutest_with_unquoted_attributesutest_comma_between_attributesu-test_weird_chars_in_unquoted_attribute_valuesutest_invalid_end_tagsutest_broken_invalid_end_tagu$test_correct_detection_of_start_tagsutest_EOF_in_charrefutest_unescape_functionutest_broken_commentsutest_broken_condcoms(u
__locals__((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyuHTMLParserTolerantTestCasess 
!uHTMLParserTolerantTestCasecBsh|EeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dS(uAttributesStrictTestCasec
Cs3tjdtfdd��tdd�SWdQXdS(NuuquiteustrictFT(usupportucheck_warningsuDeprecationWarninguFalseuEventCollectoruTrue(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu
get_collectorwsu&AttributesStrictTestCase.get_collectorcCsbdddd
ddgfg}|jd|�|jd	|�|jd
|�|jd|�dS(Nustarttaguaubuvucudueu<a b='v' c="v" d=v e>u<a  b = 'v' c = "v" d = v e>u<a
b
=
'v'
c
=
"v"
d
=
v
e>u<a	b	=	'v'	c	=	"v"	d	=	v	e>(ubuv(ucuv(uduv(ueN(uNoneu
_run_check(uselfuoutput((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_attr_syntax{s
u)AttributesStrictTestCase.test_attr_syntaxcCs�|jddddddgfg�|jd
ddddgfg�|jddd
dgfg�|jddddgfg�dS(Nu'<a b='xxx
	xxx' c="yyy	
yyy" d='	xyz
'>ustarttaguaubuxxx
	xxxucuyyy	
yyyudu	xyz
u
<a b='' c="">uu<e a=rgb(1,2,3)>ueu
rgb(1,2,3)u<a href=mailto:xyz@example.com>uhrefumailto:xyz@example.com(ubuxxx
	xxx(ucuyyy	
yyy(udu	xyz
(ubu(ucu(uau
rgb(1,2,3)(uhrefumailto:xyz@example.com(u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_attr_values�s				u)AttributesStrictTestCase.test_attr_valuescCsj|jdddddgfg�|jddd	ddgfg�|jddd	ddgfg�dS(Nu!<img src=/foo/bar.png alt=中文>ustarttaguimgusrcu/foo/bar.pngualtu中文u+<a title='テスト' href='テスト.html'>uautitleu	テストuhrefuテスト.htmlu+<a title="テスト" href="テスト.html">(usrcu/foo/bar.png(ualtu中文(utitleu	テスト(uhrefuテスト.html(utitleu	テスト(uhrefuテスト.html(u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_attr_nonascii�s			u+AttributesStrictTestCase.test_attr_nonasciicCs#|jddddgfg�dS(Nu!<a b='&amp;&gt;&lt;&quot;&apos;'>ustarttaguaubu&><"'(ubu&><"'(u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_attr_entity_replacement�su5AttributesStrictTestCase.test_attr_entity_replacementcCs)|jddddd	d
gfg�dS(Nu<a a.b='v' c:d=v e-f=v>ustarttaguaua.buvuc:due-f(ua.buv(uc:duv(ue-fuv(u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_attr_funky_names�su.AttributesStrictTestCase.test_attr_funky_namescCs#|jddddgfg�dS(Nu0<html foo='&euro;&amp;&#97;&#x61;&unsupported;'>ustarttaguhtmlufoou€&aa&unsupported;(ufoou€&aa&unsupported;(u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_entityrefs_in_attributes�su6AttributesStrictTestCase.test_entityrefs_in_attributesN(
u__name__u
__module__u__qualname__u
get_collectorutest_attr_syntaxutest_attr_valuesutest_attr_nonasciiutest_attr_entity_replacementutest_attr_funky_namesutest_entityrefs_in_attributes(u
__locals__((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyuAttributesStrictTestCaseus	uAttributesStrictTestCasecBs�|EeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�ZdS(uAttributesTolerantTestCasecCs
tdd�S(NustrictF(uEventCollectoruFalse(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu
get_collector�su(AttributesTolerantTestCase.get_collectorcCsA|jdddd
gfdddgfdddgfg�dS(
Nu<a $><b $=%><c \=/>ustarttaguau$ubu%ucu\u/(u$N(u$u%(u\u/(u
_run_checkuNone(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_attr_funky_names2�s
u1AttributesTolerantTestCase.test_attr_funky_names2cCs�x�ddddgD]o}|jd|dddgfg�|jd	|dddgfg�|jd
|ddd
gfg�qWdS(Nu&u&amp;u&#38;u&#x26;u
<a href="%s">ustarttaguauhrefu
<a href='%s'>u<a href=%s>(uhrefu&(uhrefu&(uhrefu&(u
_run_check(uselfuentity((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu test_entities_in_attribute_value�s


u;AttributesTolerantTestCase.test_entities_in_attribute_valuec
Cstd}dddgfdddddgfdddddgfdddddgfddg}|j||�dS(Nu�<a href=test'style='color:red;bad1'>test - bad1</a><a href=test'+style='color:red;ba2'>test - bad2</a><a href=test'&nbsp;style='color:red;bad3'>test - bad3</a><a href = test'&nbsp;style='color:red;bad4'  >test - bad4</a>ustarttaguauhrefutest'style='color:red;bad1'udatautest - bad1uendtagutest'+style='color:red;ba2'utest - bad2utest' style='color:red;bad3'utest - bad3utest' style='color:red;bad4'utest - bad4(uhrefutest'style='color:red;bad1'(udatautest - bad1(uendtagua(uhrefutest'+style='color:red;ba2'(udatautest - bad2(uendtagua(uhrefutest' style='color:red;bad3'(udatautest - bad3(uendtagua(uhrefutest' style='color:red;bad4'(udatautest - bad4(uendtagua(u
_run_check(uselfuhtmluexpected((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_malformed_attributes�su4AttributesTolerantTestCase.test_malformed_attributescCsf|jdddgfdddd
gfdg�|jd
ddgfddddgfdg�dS(Nu<x><y z=""o"" /></x>ustarttaguxustartendtaguyuzuuo""uendtagu<x><y z="""" /></x>u""(uzu(uo""N(uendtagux(uzu(u""N(uendtagux(u
_run_checkuNone(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu"test_malformed_adjacent_attributes�s	
	u=AttributesTolerantTestCase.test_malformed_adjacent_attributescCsH|jdddd
dgfg�|jdddddgfg�dS(Nu<a width="100%"cellspacing=0>ustarttaguauwidthu100%ucellspacingu0u<a id="foo"class="bar">uidufoouclassubar(uwidthu100%(ucellspacingu0(uidufoo(uclassubar(u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_adjacent_attributes�s		u3AttributesTolerantTestCase.test_adjacent_attributescCs#|jddddgfg�dS(Nu<a v=>ustarttaguauvu(uvu(u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_missing_attribute_value�s	u7AttributesTolerantTestCase.test_missing_attribute_valuecCs#|jddddgfg�dS(Nu-<a href=javascript:popup('/popup/help.html')>ustarttaguauhrefu$javascript:popup('/popup/help.html')(uhrefu$javascript:popup('/popup/help.html')(u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_javascript_attribute_value�s	u:AttributesTolerantTestCase.test_javascript_attribute_valuecCs)|jdddd	gfd
dg�dS(Nu-<a href='http://www.example.org/">;'>spam</a>ustarttaguauhrefuhttp://www.example.org/">;udatauspamuendtag(uhrefuhttp://www.example.org/">;(udatauspam(uendtagua(u
_run_check(uself((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyutest_end_tag_in_attribute_value�s		u:AttributesTolerantTestCase.test_end_tag_in_attribute_valueN(u__name__u
__module__u__qualname__u
get_collectorutest_attr_funky_names2u test_entities_in_attribute_valueutest_malformed_attributesu"test_malformed_adjacent_attributesutest_adjacent_attributesutest_missing_attribute_valueutest_javascript_attribute_valueutest_end_tag_in_attribute_value(u
__locals__((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyuAttributesTolerantTestCase�s
	uAttributesTolerantTestCaseu__main__(u__doc__uhtml.parseruhtmlupprintuunittestutestusupportuparseru
HTMLParseruEventCollectoruEventCollectorExtrauTestCaseuTestCaseBaseuHTMLParserStrictTestCaseuHTMLParserTolerantTestCaseuAttributesStrictTestCaseuAttributesTolerantTestCaseu__name__umain(((u9/opt/alt/python33/lib64/python3.3/test/test_htmlparser.pyu<module>s9��>P