Sindbad~EG File Manager

Current Path : /usr/local/lib/python3.9/test/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.9/test/__pycache__/test_robotparser.cpython-39.opt-1.pyc

a

��gV+�@sddlZddlZddlZddlZddlZddlmZddlm	Z	ddl
mZmZGdd�d�Z
Gdd�de
ej�ZGd	d
�d
e
ej�ZGdd�de
ej�ZGd
d�de
ej�ZGdd�de
�ZGdd�deej�ZGdd�deej�ZGdd�de�ZGdd�de
ej�ZGdd�de
ej�ZGdd�de
ej�ZGdd�de
ej�ZGdd �d e�ZGd!d"�d"e
ej�ZGd#d$�d$e
ej�ZGd%d&�d&e
ej�ZGd'd(�d(e
ej�ZGd)d*�d*eej�Z Gd+d,�d,e
ej�Z!Gd-d.�d.e�Z"Gd/d0�d0ej�Z#Gd1d2�d2ej�Z$e%d3k�re�&�dS)4�N)�support)�
socket_helper)�BaseHTTPRequestHandler�
HTTPServerc@sHeZdZdZdZgZgZdZdd�Zdd�Z	dd	�Z
d
d�Zdd
�ZdS)�
BaseRobotTest�Ztest_robotparserNcCs,t�|j���}tj��|_|j�|�dS�N)	�io�StringIO�
robots_txt�	readlines�urllib�robotparser�RobotFileParser�parser�parse)�self�lines�r�1/usr/local/lib/python3.9/test/test_robotparser.py�setUpszBaseRobotTest.setUpcCs$t|t�r|\}}||fS|j|fSr)�
isinstance�tuple�agent�r�urlrrrr�get_agent_and_urls
zBaseRobotTest.get_agent_and_urlc	Cs`|jD]T}|�|�\}}|j||d��$|�|j�||��Wd�q1sP0YqdS�N)rr)�goodr�subTest�
assertTruer�	can_fetchrrrr�test_good_urlss
zBaseRobotTest.test_good_urlsc	Cs`|jD]T}|�|�\}}|j||d��$|�|j�||��Wd�q1sP0YqdSr)�badrr�assertFalserr!rrrr�
test_bad_urls#s
zBaseRobotTest.test_bad_urlscCs|�|j��|j�dSr)�assertEqualr�	site_maps�rrrr�test_site_maps)szBaseRobotTest.test_site_maps)
�__name__�
__module__�__qualname__rrrr#r'rrr"r%r)rrrrrsrc@s eZdZdZddgZgd�ZdS)�UserAgentWildcardTestz�User-agent: *
Disallow: /cyberworld/map/ # This is an infinite virtual URL space
Disallow: /tmp/ # these will soon disappear
Disallow: /foo.html
    �/�
/test.html)�/cyberworld/map/index.htmlz/tmp/xxx�	/foo.htmlN�r*r+r,rrr#rrrrr--sr-c@seZdZdZgd�ZdgZdS)�CrawlDelayAndCustomAgentTestz�# robots.txt for http://www.example.com/

User-agent: *
Crawl-delay: 1
Request-rate: 3/15
Disallow: /cyberworld/map/ # This is an infinite virtual URL space

# Cybermapper knows where to go.
User-agent: cybermapper
Disallow:
    )r.r/)Zcybermapperr0r0Nr2rrrrr38sr3c@s&eZdZdZddgZdgZddgZdS)�SitemapTesta# robots.txt for http://www.example.com/

User-agent: *
Sitemap: http://www.gstatic.com/s2/sitemaps/profiles-sitemap.xml
Sitemap: http://www.google.com/hostednews/sitemap_index.xml
Request-rate: 3/15
Disallow: /cyberworld/map/ # This is an infinite virtual URL space

    r.r/r0z7http://www.gstatic.com/s2/sitemaps/profiles-sitemap.xmlz2http://www.google.com/hostednews/sitemap_index.xmlN)r*r+r,rrr#r'rrrrr4Is
�r4c@seZdZdZgZgd�ZdS)�RejectAllRobotsTestz(# go away
User-agent: *
Disallow: /
    )r0r.�/tmp/Nr2rrrrr5Zsr5c@seZdZdZdZdd�ZdS)�BaseRequestRateTestNc	Cs�|j}|j|jD]�}|�|�\}}|j||d��z|�|�|�|j�|�|�}|�||j�|jdur�|�|t	j
j�|�|j|jj�|�|j
|jj
�Wd�q1s�0YqdSr)rrr#rrr&�crawl_delay�request_rateZassertIsInstancer
r�RequestRateZrequestsZseconds)rrrrZparsed_request_raterrr�test_request_ratehs(

���z%BaseRequestRateTest.test_request_rate)r*r+r,r9r8r;rrrrr7dsr7c@seZdZdZdgZdS)�
EmptyFileTestrz/fooN)r*r+r,rrrrrrr<�sr<c@s4eZdZdZdZej�dd�ZdZ	dgZ
gd�ZdS)	�CrawlDelayAndRequestRateTestz�User-agent: figtree
Crawl-delay: 3
Request-rate: 9/30
Disallow: /tmp
Disallow: /a%3cd.html
Disallow: /a%2fb.html
Disallow: /%7ejoe/index.html
    �figtree�	��)r>r1)�/tmpz	/tmp.html�/tmp/a.html�/a%3cd.html�/a%3Cd.htmlz/a%2fb.htmlz/~joe/index.htmlN)r*r+r,rrr
rr:r9r8rr#rrrrr=�s	r=c@seZdZdZdS)�DifferentAgentTestzFigTree Robot libwww-perl/5.04N�r*r+r,rrrrrrF�srFc@s"eZdZdZdgZgd�ZdZdS)�InvalidRequestRateTestz�User-agent: *
Disallow: /tmp/
Disallow: /a%3Cd.html
Disallow: /a/b.html
Disallow: /%7ejoe/index.html
Crawl-delay: 3
Request-rate: 9/banana
    rB)r6rCrDrEz	/a/b.htmlz/%7Ejoe/index.htmlrAN)r*r+r,rrr#r8rrrrrH�s	rHc@seZdZdZdgZgZdS)�InvalidCrawlDelayTestz2User-Agent: *
Disallow: /.
Crawl-delay: pears
    r1Nr2rrrrrI�srIc@s eZdZdZdZdgZdgZdS)�AnotherInvalidRequestRateTestzeUser-agent: Googlebot
Allow: /folder1/myfile.html
Disallow: /folder1/
Request-rate: whale/banana
    �	Googlebot�/folder1/myfile.html�/folder1/anotherfile.htmlN�r*r+r,rrrr#rrrrrJ�srJc@seZdZdZdZdgZdS)�UserAgentOrderingTestzMUser-agent: Googlebot
Disallow: /

User-agent: Googlebot-Mobile
Allow: /
    rKz/something.jpgN)r*r+r,rrr#rrrrrO�srOc@seZdZdZdS)�UserAgentGoogleMobileTestzGooglebot-MobileNrGrrrrrP�srPc@s eZdZdZdZdgZdgZdS)�GoogleURLOrderingTestzJUser-agent: Googlebot
Allow: /folder1/myfile.html
Disallow: /folder1/
    Z	googlebotrLrMNrNrrrrrQ�srQc@seZdZdZdgZdgZdS)�DisallowQueryStringTestz2User-agent: *
Disallow: /some/path?name=value
    �
/some/pathz/some/path?name=valueNr2rrrrrR�srRc@seZdZdZdgZdgZdS)�UseFirstUserAgentWildcardTestzNUser-agent: *
Disallow: /some/path

User-agent: *
Disallow: /another/path
    z
/another/pathrSNr2rrrrrT�srTc@seZdZdZdgZdgZdS)�EmptyQueryStringTestz>User-agent: *
Allow: /some/path?
Disallow: /another/path?
    z/some/path?z/another/path?Nr2rrrrrU�srUc@s0eZdZdZej�dd�ZdZddgZ	dgZ
dS)	�DefaultEntryTestzOUser-agent: *
Crawl-delay: 1
Request-rate: 3/15
Disallow: /cyberworld/map/
    rA��r.r/r0N)r*r+r,rr
rr:r9r8rr#rrrrrVs
rVc@seZdZdZdZdd�ZdS)�StringFormattingTestz�User-agent: *
Crawl-delay: 1
Request-rate: 3/15
Disallow: /cyberworld/map/ # This is an infinite virtual URL space

# Cybermapper knows where to go.
User-agent: cybermapper
Disallow: /some/path
    zxUser-agent: cybermapper
Disallow: /some/path

User-agent: *
Crawl-delay: 1
Request-rate: 3/15
Disallow: /cyberworld/map/cCs|�t|j�|j�dSr)r&�strr�expected_outputr(rrr�test_string_formatting)sz+StringFormattingTest.test_string_formattingN)r*r+r,rr[r\rrrrrYs
rYc@seZdZdd�Zdd�ZdS)�RobotHandlercCs|�dd�dS)Ni�zForbidden access)Z
send_errorr(rrr�do_GET/szRobotHandler.do_GETcGsdSrr)r�format�argsrrr�log_message2szRobotHandler.log_messageN)r*r+r,r^rarrrrr]-sr]c@s*eZdZdd�Zdd�Zejdd��ZdS)�PasswordProtectedSiteTestCasecCsP|�tjj�ttjdft�|_t	j
d|jjddid�|_d|j_
|j��dS)NrzHTTPServer servingZ
poll_intervalg{�G�z�?)�name�target�kwargsT)Z
addCleanupr
Zrequest�
urlcleanuprr�HOSTr]�server�	threading�ThreadZ
serve_forever�t�daemon�startr(rrrr8s�z#PasswordProtectedSiteTestCase.setUpcCs"|j��|j��|j��dSr)rh�shutdownrk�joinZserver_closer(rrr�tearDownHs

z&PasswordProtectedSiteTestCase.tearDowncCs\|jj}dtjdt|d�}|d}tj��}|�|�|�	�|�
|�d|��dS)Nzhttp://�:rXz/robots.txt�*)rhZserver_addressrrgrZr
rrZset_url�readr$r!)r�addrrZ
robots_urlrrrr�testPasswordProtectedSiteMs

z7PasswordProtectedSiteTestCase.testPasswordProtectedSiteN)r*r+r,rrprZreap_threadsrurrrrrb6srbc@sFeZdZdZd�e�Zedd��Zdd�Zdd�Z	d	d
�Z
dd�Zd
S)�NetworkTestCasezhttp://www.pythontest.net/z{}elsewhere/robots.txtcCsTt�d�t�|j��*tj�|j�|_	|j	�
�Wd�n1sF0YdS)N�network)rZrequiresrZtransient_internet�base_urlr
rrrrrs)�clsrrr�
setUpClass]s
zNetworkTestCase.setUpClasscCs$d�|j|tj�|�dsdnd�S)Nz{}{}{}rXr.r)r_rx�os�path�splitext)rr|rrrrds�zNetworkTestCase.urlcCsV|�|jj�|�|jj�|�|j��d�|�|j�d��|�|j�d��dS)Nrrr)r$r�disallow_all�	allow_allZ
assertGreater�mtimer8r9r(rrr�
test_basicis
zNetworkTestCase.test_basiccCs�|�|j�d|�d���|�|j�d|j��|�|j�d|�d���|�|j�d|�d���|�|j�d|�d���|�|j�d|j��dS)NrrZ	elsewhereZNutchZbrianZwebstats)r rr!rr$rxr(rrr�test_can_fetchpszNetworkTestCase.test_can_fetchcCsftj�|�d��}|��|�|j�|�|j�|�	|�
�d�|�|�d��|�|�
d��dS)Nzi-robot.txtrrr)r
rrrrsr rr$r~r&r�ZassertIsNoner8r9)rrrrr�
test_read_404xszNetworkTestCase.test_read_404N)r*r+r,rxr_r�classmethodrzrr�r�r�rrrrrvXs

rv�__main__)'r	r{riZunittestZurllib.robotparserr
�testrZtest.supportrZhttp.serverrrrZTestCaser-r3r4r5r7r<r=rFrHrIrJrOrPrQrRrTrUrVrYr]rbrvr*�mainrrrr�<module>s@"





	")


Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists