shell bypass 403
o
ab�4 � @ s4 d dl Z d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlZd dl Z d dl
Z
d dlZd dlZd dl
Z
d dlZd dlZd dlmZmZmZmZmZmZmZ d dlmZ d dlZd dlZG d d
� d
e j�ZG dd� de j�ZG d
d� d�Z G dd� d�Z!G dd� de"�Z#G dd� de j$�Z%G dd� d�Z&G dd� d�Z'G dd� de j(�Z)G dd� d�Z*G dd� d�Z+dd � Z,d!d"� Z-G d#d$� d$ej.j/�Z0G d%d&� d&ej.j1�Z2G d'd(� d(ej.j/�Z3G d)d*� d*�Z4G d+d,� d,e j�Z5d-d.� Z6G d/d0� d0e j�Z7G d1d2� d2e j�Z8G d3d4� d4e j�Z9e:d5k�re �;� dS dS )6� N)�support)� os_helper)�
socket_helper)�warnings_helper)�test_urllib)�Request�OpenerDirector�HTTPBasicAuthHandler�HTTPPasswordMgrWithPriorAuth�_parse_proxy�_proxy_bypass_macosx_sysconf�AbstractDigestAuthHandler)�urlparsec @ �, e Zd Zdd� Zdd� Zdd� Zdd� Zd S )
�TrivialTestsc
C s� dD ]I}i }t d| |� |d= |dkr2tjdkr2|�d�|�d�}}| �|jd� | �|jd� |�� D ]\}}| �|jd | d
|||jf � q6qd S )N)�request�response�parse�error�robotparserzfrom urllib.%s import *�__builtins__r �nt�url2pathname�pathname2urlZ
nturl2pathz urllib.%sz.%r is exposed in 'urllib.%s' but defined in %r)�exec�os�name�pop�assertEqual�
__module__�items)�self�module�context�u�p�k�v� r( �:/usr/local/python-3.10/lib/python3.10/test/test_urllib2.py�test___all__# s
����zTrivialTests.test___all__c C s� | � tjj� | �ttjjd� tj� tjj
��tjd�}tj
dkr'd| }nd| }tj�|��
}|�� W d � d S 1 sAw Y d S )Nz bogus url�/r z
file:///%s� file://%s)�
addCleanup�urllibr �
urlcleanup�assertRaises�
ValueError�urlopenr �path�abspath�__file__�replace�sepr �read)r! ZfnameZfile_url�fr( r( r) �test_trivial2 s
"�zTrivialTests.test_trivialc C sR dg d�fdddgfdg d�fdg d �fg}|D ]\}}| � tj�|�|� qd S )
Nza,b,c)�a�b�czpath"o,l"og"i"cal, examplezpath"o,l"og"i"calZexampleza, b, "c", "d", "e,f", g, h)r; r<