403Webshell
Server IP : 118.27.122.248  /  Your IP : 216.73.216.109
Web Server : Apache
System : Linux web0264.sh.tyo1 4.18.0-553.79.1.lve.el7h.x86_64 #1 SMP Wed Oct 15 16:34:46 UTC 2025 x86_64
User : c9415830 ( 11735)
PHP Version : 8.4.17
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /opt/alt/python36/lib64/python3.6/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /opt/alt/python36/lib64/python3.6/test/__pycache__/test_gettext.cpython-36.pyc
3

�w2_ԃ�@srddlZddlZddlZddlZddlZddlmZdZdZdZ	dZ
dZejj
dd	�Zejj
ed
�Zejj
ed�Zejj
ed�Zejj
ed
�Zejj
ed�ZGdd�dej�ZdZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGd d!�d!ej�ZGd"d#�d#e�Z Gd$d%�d%ej�Z!d&d'�Z"e#d(k�rne"�dS))�N)�supports3hIElQAAAAAGAAAAHAAAAEwAAAALAAAAfAAAAAAAAACoAAAAFQAAAKkAAAAjAAAAvwAAAKEAAADj
AAAABwAAAIUBAAALAAAAjQEAAEUBAACZAQAAFgAAAN8CAAAeAAAA9gIAAKEAAAAVAwAABQAAALcD
AAAJAAAAvQMAAAEAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABQAAAAYAAAACAAAAAFJh
eW1vbmQgTHV4dXJ5IFlhY2gtdABUaGVyZSBpcyAlcyBmaWxlAFRoZXJlIGFyZSAlcyBmaWxlcwBU
aGlzIG1vZHVsZSBwcm92aWRlcyBpbnRlcm5hdGlvbmFsaXphdGlvbiBhbmQgbG9jYWxpemF0aW9u
CnN1cHBvcnQgZm9yIHlvdXIgUHl0aG9uIHByb2dyYW1zIGJ5IHByb3ZpZGluZyBhbiBpbnRlcmZh
Y2UgdG8gdGhlIEdOVQpnZXR0ZXh0IG1lc3NhZ2UgY2F0YWxvZyBsaWJyYXJ5LgBtdWxsdXNrAG51
ZGdlIG51ZGdlAFByb2plY3QtSWQtVmVyc2lvbjogMi4wClBPLVJldmlzaW9uLURhdGU6IDIwMDAt
MDgtMjkgMTI6MTktMDQ6MDAKTGFzdC1UcmFuc2xhdG9yOiBKLiBEYXZpZCBJYsOhw7FleiA8ai1k
YXZpZEBub29zLmZyPgpMYW5ndWFnZS1UZWFtOiBYWCA8cHl0aG9uLWRldkBweXRob24ub3JnPgpN
SU1FLVZlcnNpb246IDEuMApDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9aXNvLTg4
NTktMQpDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiBub25lCkdlbmVyYXRlZC1CeTogcHlnZXR0
ZXh0LnB5IDEuMQpQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPTI7IHBsdXJhbD1uIT0xOwoAVGhyb2F0
d29iYmxlciBNYW5ncm92ZQBIYXkgJXMgZmljaGVybwBIYXkgJXMgZmljaGVyb3MAR3V2ZiB6YnFo
eXIgY2ViaXZxcmYgdmFncmVhbmd2YmFueXZtbmd2YmEgbmFxIHlicG55dm1uZ3ZiYQpmaGNjYmVn
IHNiZSBsYmhlIENsZ3ViYSBjZWJ0ZW56ZiBvbCBjZWJpdnF2YXQgbmEgdmFncmVzbnByIGdiIGd1
ciBUQUgKdHJnZ3JrZyB6cmZmbnRyIHBuZ255YnQgeXZvZW5lbC4AYmFjb24Ad2luayB3aW5rAA==
s3hIElQAABQAGAAAAHAAAAEwAAAALAAAAfAAAAAAAAACoAAAAFQAAAKkAAAAjAAAAvwAAAKEAAADj
AAAABwAAAIUBAAALAAAAjQEAAEUBAACZAQAAFgAAAN8CAAAeAAAA9gIAAKEAAAAVAwAABQAAALcD
AAAJAAAAvQMAAAEAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABQAAAAYAAAACAAAAAFJh
eW1vbmQgTHV4dXJ5IFlhY2gtdABUaGVyZSBpcyAlcyBmaWxlAFRoZXJlIGFyZSAlcyBmaWxlcwBU
aGlzIG1vZHVsZSBwcm92aWRlcyBpbnRlcm5hdGlvbmFsaXphdGlvbiBhbmQgbG9jYWxpemF0aW9u
CnN1cHBvcnQgZm9yIHlvdXIgUHl0aG9uIHByb2dyYW1zIGJ5IHByb3ZpZGluZyBhbiBpbnRlcmZh
Y2UgdG8gdGhlIEdOVQpnZXR0ZXh0IG1lc3NhZ2UgY2F0YWxvZyBsaWJyYXJ5LgBtdWxsdXNrAG51
ZGdlIG51ZGdlAFByb2plY3QtSWQtVmVyc2lvbjogMi4wClBPLVJldmlzaW9uLURhdGU6IDIwMDAt
MDgtMjkgMTI6MTktMDQ6MDAKTGFzdC1UcmFuc2xhdG9yOiBKLiBEYXZpZCBJYsOhw7FleiA8ai1k
YXZpZEBub29zLmZyPgpMYW5ndWFnZS1UZWFtOiBYWCA8cHl0aG9uLWRldkBweXRob24ub3JnPgpN
SU1FLVZlcnNpb246IDEuMApDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9aXNvLTg4
NTktMQpDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiBub25lCkdlbmVyYXRlZC1CeTogcHlnZXR0
ZXh0LnB5IDEuMQpQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPTI7IHBsdXJhbD1uIT0xOwoAVGhyb2F0
d29iYmxlciBNYW5ncm92ZQBIYXkgJXMgZmljaGVybwBIYXkgJXMgZmljaGVyb3MAR3V2ZiB6YnFo
eXIgY2ViaXZxcmYgdmFncmVhbmd2YmFueXZtbmd2YmEgbmFxIHlicG55dm1uZ3ZiYQpmaGNjYmVn
IHNiZSBsYmhlIENsZ3ViYSBjZWJ0ZW56ZiBvbCBjZWJpdnF2YXQgbmEgdmFncmVzbnByIGdiIGd1
ciBUQUgKdHJnZ3JrZyB6cmZmbnRyIHBuZ255YnQgeXZvZW5lbC4AYmFjb24Ad2luayB3aW5rAA==
s3hIElQcAAAAGAAAAHAAAAEwAAAALAAAAfAAAAAAAAACoAAAAFQAAAKkAAAAjAAAAvwAAAKEAAADj
AAAABwAAAIUBAAALAAAAjQEAAEUBAACZAQAAFgAAAN8CAAAeAAAA9gIAAKEAAAAVAwAABQAAALcD
AAAJAAAAvQMAAAEAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABQAAAAYAAAACAAAAAFJh
eW1vbmQgTHV4dXJ5IFlhY2gtdABUaGVyZSBpcyAlcyBmaWxlAFRoZXJlIGFyZSAlcyBmaWxlcwBU
aGlzIG1vZHVsZSBwcm92aWRlcyBpbnRlcm5hdGlvbmFsaXphdGlvbiBhbmQgbG9jYWxpemF0aW9u
CnN1cHBvcnQgZm9yIHlvdXIgUHl0aG9uIHByb2dyYW1zIGJ5IHByb3ZpZGluZyBhbiBpbnRlcmZh
Y2UgdG8gdGhlIEdOVQpnZXR0ZXh0IG1lc3NhZ2UgY2F0YWxvZyBsaWJyYXJ5LgBtdWxsdXNrAG51
ZGdlIG51ZGdlAFByb2plY3QtSWQtVmVyc2lvbjogMi4wClBPLVJldmlzaW9uLURhdGU6IDIwMDAt
MDgtMjkgMTI6MTktMDQ6MDAKTGFzdC1UcmFuc2xhdG9yOiBKLiBEYXZpZCBJYsOhw7FleiA8ai1k
YXZpZEBub29zLmZyPgpMYW5ndWFnZS1UZWFtOiBYWCA8cHl0aG9uLWRldkBweXRob24ub3JnPgpN
SU1FLVZlcnNpb246IDEuMApDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9aXNvLTg4
NTktMQpDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiBub25lCkdlbmVyYXRlZC1CeTogcHlnZXR0
ZXh0LnB5IDEuMQpQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPTI7IHBsdXJhbD1uIT0xOwoAVGhyb2F0
d29iYmxlciBNYW5ncm92ZQBIYXkgJXMgZmljaGVybwBIYXkgJXMgZmljaGVyb3MAR3V2ZiB6YnFo
eXIgY2ViaXZxcmYgdmFncmVhbmd2YmFueXZtbmd2YmEgbmFxIHlicG55dm1uZ3ZiYQpmaGNjYmVn
IHNiZSBsYmhlIENsZ3ViYSBjZWJ0ZW56ZiBvbCBjZWJpdnF2YXQgbmEgdmFncmVzbnByIGdiIGd1
ciBUQUgKdHJnZ3JrZyB6cmZmbnRyIHBuZ255YnQgeXZvZW5lbC4AYmFjb24Ad2luayB3aW5rAA==
s�3hIElQAAAAACAAAAHAAAACwAAAAFAAAAPAAAAAAAAABQAAAABAAAAFEAAAAPAQAAVgAAAAQAAABm
AQAAAQAAAAIAAAAAAAAAAAAAAAAAAAAAYWLDngBQcm9qZWN0LUlkLVZlcnNpb246IDIuMApQTy1S
ZXZpc2lvbi1EYXRlOiAyMDAzLTA0LTExIDEyOjQyLTA0MDAKTGFzdC1UcmFuc2xhdG9yOiBCYXJy
eSBBLiBXQXJzYXcgPGJhcnJ5QHB5dGhvbi5vcmc+Ckxhbmd1YWdlLVRlYW06IFhYIDxweXRob24t
ZGV2QHB5dGhvbi5vcmc+Ck1JTUUtVmVyc2lvbjogMS4wCkNvbnRlbnQtVHlwZTogdGV4dC9wbGFp
bjsgY2hhcnNldD11dGYtOApDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA3Yml0CkdlbmVyYXRl
ZC1CeTogbWFudWFsbHkKAMKkeXoA
sL3hIElQAAAAABAAAAHAAAACQAAAADAAAALAAAAAAAAAA4AAAAeAEAADkAAAABAAAAAAAAAAAAAAAA
UHJvamVjdC1JZC1WZXJzaW9uOiBObyBQcm9qZWN0IDAuMApQT1QtQ3JlYXRpb24tRGF0ZTogV2Vk
IERlYyAxMSAwNzo0NDoxNSAyMDAyClBPLVJldmlzaW9uLURhdGU6IDIwMDItMDgtMTQgMDE6MTg6
NTgrMDA6MDAKTGFzdC1UcmFuc2xhdG9yOiBKb2huIERvZSA8amRvZUBleGFtcGxlLmNvbT4KSmFu
ZSBGb29iYXIgPGpmb29iYXJAZXhhbXBsZS5jb20+Ckxhbmd1YWdlLVRlYW06IHh4IDx4eEBleGFt
cGxlLmNvbT4KTUlNRS1WZXJzaW9uOiAxLjAKQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFy
c2V0PWlzby04ODU5LTE1CkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IHF1b3RlZC1wcmludGFi
bGUKR2VuZXJhdGVkLUJ5OiBweWdldHRleHQucHkgMS4zCgA=
�xx�LC_MESSAGESz
gettext.mozgettext_bad_major_version.mozgettext_bad_minor_version.mozugettext.mozmetadata.moc@seZdZdd�Zdd�ZdS)�GettextBaseTestc&Cs�tjjt�stjt�ttd��}|jtj	t
��WdQRXttd��}|jtj	t��WdQRXtt
d��}|jtj	t��WdQRXttd��}|jtj	t��WdQRXttd��}|jtj	t��WdQRXtj�|_d|jd<tjj�dS)N�wbrZLANGUAGE)�os�path�isdir�	LOCALEDIR�makedirs�open�MOFILE�write�base64�decodebytes�GNU_MO_DATA�MOFILE_BAD_MAJOR_VERSION�GNU_MO_DATA_BAD_MAJOR_VERSION�MOFILE_BAD_MINOR_VERSION�GNU_MO_DATA_BAD_MINOR_VERSION�UMOFILE�UMO_DATA�MMOFILE�MMO_DATArZEnvironmentVarGuard�env�gettext�
_translations�clear)�self�fp�r �6/opt/alt/python36/lib64/python3.6/test/test_gettext.py�setUpss


zGettextBaseTest.setUpcCs(|jj�|`tjtjjt�d�dS)Nr)r�__exit__rZrmtreerr�splitr
)rr r r!�tearDown�s
zGettextBaseTest.tearDownN)�__name__�
__module__�__qualname__r"r%r r r r!rrsrs�3hIElQAAAAABAAAAHAAAACQAAAAAAAAAAAAAAAAAAAAsAAAAggAAAC0AAAAAUGx1cmFsLUZvcm1z
OiBucGx1cmFscz0yOyBwbHVyYWw9KG4gIT0gMSk7CiMtIy0jLSMtIyAgbWVzc2FnZXMucG8gKEVk
WCBTdHVkaW8pICAjLSMtIy0jLSMKQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVU
Ri04CgA=
c@sDeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dS)�GettextTestCase1cCs*tj|�tj|_t|_tjd|j�dS)Nr)	rr"r�curdir�	localedirr
�mofiler�install)rr r r!r"�s
zGettextTestCase1.setUpcCsB|j}|td�d�|td�d�|td�d�|td�d�dS)N�	albatross�mullusk�baconzRaymond Luxury Yach-tzThroatwobbler Mangroveznudge nudgez	wink wink)�assertEqual�_)r�eqr r r!�test_some_translations�s
z'GettextTestCase1.test_some_translationscCsB|j}|td�d�|td�d�|td�d�|td�d�dS)Nr.r/r0zRaymond Luxury Yach-tzThroatwobbler Mangroveznudge nudgez	wink wink)r1r2)rr3r r r!�test_double_quotes�s
z#GettextTestCase1.test_double_quotescCsB|j}|td�d�|td�d�|td�d�|td�d�dS)Nr.r/r0zRaymond Luxury Yach-tzThroatwobbler Mangroveznudge nudgez	wink wink)r1r2)rr3r r r!�test_triple_single_quotes�s
z*GettextTestCase1.test_triple_single_quotescCsB|j}|td�d�|td�d�|td�d�|td�d�dS)Nr.r/r0zRaymond Luxury Yach-tzThroatwobbler Mangroveznudge nudgez	wink wink)r1r2)rr3r r r!�test_triple_double_quotes�s
z*GettextTestCase1.test_triple_double_quotescCs|j}|td�d�dS)Nz�This module provides internationalization and localization
support for your Python programs by providing an interface to the GNU
gettext message catalog library.z�Guvf zbqhyr cebivqrf vagreangvbanyvmngvba naq ybpnyvmngvba
fhccbeg sbe lbhe Clguba cebtenzf ol cebivqvat na vagresnpr gb gur TAH
trggrkg zrffntr pngnybt yvoenel.)r1r2)rr3r r r!�test_multiline_strings�sz'GettextTestCase1.test_multiline_stringsc
Cs�|j}t|jd��}tj|�}WdQRX|j�|td�d�|j�|td�d�ddl}|jddgd	�|t|j�||j|j�|t|j�|`|`dS)
N�rbznudge nudgez	wink winkr/r0rr�lgettext)�names)	r1rr,r�GNUTranslationsr-r2�builtinsr:)rr3r�tr=r r r!�test_the_alternative_interface�sz/GettextTestCase1.test_the_alternative_interfaceN)
r&r'r(r"r4r5r6r7r8r?r r r r!r)�s
r)c@s\eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�ZdS)�GettextTestCase2cCs6tj|�tj|_tjd|j�tjd�tj|_dS)Nr)	rr"rr*r+r�bindtextdomain�
textdomainr2)rr r r!r"�s


zGettextTestCase2.setUpcCs|jtjd�|j�dS)Nr)r1rrAr+)rr r r!�test_bindtextdomain�sz$GettextTestCase2.test_bindtextdomaincCs|jtj�d�dS)Nr)r1rrB)rr r r!�test_textdomain�sz GettextTestCase2.test_textdomaincCsjttd��V}|jt��}tj|�WdQRX|j}|j|jd�|j|j	d�|j|j
t�WdQRXdS)Nr9rzBad version number 5)rr�assertRaises�OSErrorrr<�	exceptionr1�errno�strerror�filename)rr�cmrGr r r!�test_bad_major_version�sz'GettextTestCase2.test_bad_major_versionc	Cs$ttd��}tj|�WdQRXdS)Nr9)rrrr<)rrr r r!�test_bad_minor_version�sz'GettextTestCase2.test_bad_minor_versioncCsJ|j}||jd�d�||jd�d�||jd�d�||jd�d�dS)Nr.r/r0zRaymond Luxury Yach-tzThroatwobbler Mangroveznudge nudgez	wink wink)r1r2)rr3r r r!r4�s
z'GettextTestCase2.test_some_translationscCsJ|j}||jd�d�||jd�d�||jd�d�||jd�d�dS)Nr.r/r0zRaymond Luxury Yach-tzThroatwobbler Mangroveznudge nudgez	wink wink)r1r2)rr3r r r!r5�s
z#GettextTestCase2.test_double_quotescCsJ|j}||jd�d�||jd�d�||jd�d�||jd�d�dS)Nr.r/r0zRaymond Luxury Yach-tzThroatwobbler Mangroveznudge nudgez	wink wink)r1r2)rr3r r r!r6s
z*GettextTestCase2.test_triple_single_quotescCsJ|j}||jd�d�||jd�d�||jd�d�||jd�d�dS)Nr.r/r0zRaymond Luxury Yach-tzThroatwobbler Mangroveznudge nudgez	wink wink)r1r2)rr3r r r!r7
s
z*GettextTestCase2.test_triple_double_quotescCs|j}||jd�d�dS)Nz�This module provides internationalization and localization
support for your Python programs by providing an interface to the GNU
gettext message catalog library.z�Guvf zbqhyr cebivqrf vagreangvbanyvmngvba naq ybpnyvmngvba
fhccbeg sbe lbhe Clguba cebtenzf ol cebivqvat na vagresnpr gb gur TAH
trggrkg zrffntr pngnybt yvoenel.)r1r2)rr3r r r!r8sz'GettextTestCase2.test_multiline_stringsN)
r&r'r(r"rCrDrLrMr4r5r6r7r8r r r r!r@�s	
r@c@s�eZdZdd�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)d*�Zd+d,�Zd-d.�Zd/S)0�PluralFormsTestCasecCstj|�t|_dS)N)rr"r
r,)rr r r!r"!s
zPluralFormsTestCase.setUpcCs:|j}tjddd�}||d�tjddd�}||d�dS)NzThere is %s filezThere are %s files�zHay %s fichero�zHay %s ficheros)r1r�ngettext)rr3�xr r r!�test_plural_forms1%s

z&PluralFormsTestCase.test_plural_forms1cCs\|j}t|jd��}tj|�}WdQRX|jddd�}||d�|jddd�}||d�dS)Nr9zThere is %s filezThere are %s filesrOzHay %s ficherorPzHay %s ficheros)r1rr,rr<rQ)rr3rr>rRr r r!�test_plural_forms2,s
z&PluralFormsTestCase.test_plural_forms2cs:|j}tjd��dj�fdd�td�D��}||d�dS)N�0�csg|]}t�|���qSr )�str)�.0rR)�fr r!�
<listcomp>:sz/PluralFormsTestCase.test_ja.<locals>.<listcomp>��Z�00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000)r1r�c2py�join�range)rr3�sr )rYr!�test_ja7s
zPluralFormsTestCase.test_jacs:|j}tjd��dj�fdd�td�D��}||d�dS)Nzn != 1rVcsg|]}t�|���qSr )rW)rXrR)rYr r!rZ@sz/PluralFormsTestCase.test_de.<locals>.<listcomp>r[Z�10111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111)r1rr\r]r^)rr3r_r )rYr!�test_de=s
zPluralFormsTestCase.test_decs:|j}tjd��dj�fdd�td�D��}||d�dS)Nzn>1rVcsg|]}t�|���qSr )rW)rXrR)rYr r!rZFsz/PluralFormsTestCase.test_fr.<locals>.<listcomp>r[Z�00111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111)r1rr\r]r^)rr3r_r )rYr!�test_frCs
zPluralFormsTestCase.test_frcs:|j}tjd��dj�fdd�td�D��}||d�dS)Nz)n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2rVcsg|]}t�|���qSr )rW)rXrR)rYr r!rZLsz/PluralFormsTestCase.test_lv.<locals>.<listcomp>r[Z�20111111111111111111101111111110111111111011111111101111111110111111111011111111101111111110111111111011111111111111111110111111111011111111101111111110111111111011111111101111111110111111111011111111)r1rr\r]r^)rr3r_r )rYr!�test_lvIs
zPluralFormsTestCase.test_lvcs:|j}tjd��dj�fdd�td�D��}||d�dS)Nzn==1 ? 0 : n==2 ? 1 : 2rVcsg|]}t�|���qSr )rW)rXrR)rYr r!rZRsz/PluralFormsTestCase.test_gd.<locals>.<listcomp>r[��20122222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222)r1rr\r]r^)rr3r_r )rYr!�test_gdOs
zPluralFormsTestCase.test_gdcs:|j}tjd��dj�fdd�td�D��}||d�dS)Nzn==1 ? 0 : (n==2 ? 1 : 2)rVcsg|]}t�|���qSr )rW)rXrR)rYr r!rZYsz0PluralFormsTestCase.test_gd2.<locals>.<listcomp>r[rd)r1rr\r]r^)rr3r_r )rYr!�test_gd2Us
zPluralFormsTestCase.test_gd2cs:|j}tjd��dj�fdd�td�D��}||d�dS)Nz6n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < 20)) ? 1 : 2rVcsg|]}t�|���qSr )rW)rXrR)rYr r!rZ_sz/PluralFormsTestCase.test_ro.<locals>.<listcomp>r[Z�10111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222111111111111111111122222222222222222222222222222222222222222222222222222222222222222222222222222222)r1rr\r]r^)rr3r_r )rYr!�test_ro\s
zPluralFormsTestCase.test_rocs:|j}tjd��dj�fdd�td�D��}||d�dS)NzEn%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2rVcsg|]}t�|���qSr )rW)rXrR)rYr r!rZesz/PluralFormsTestCase.test_lt.<locals>.<listcomp>r[Z�20111111112222222222201111111120111111112011111111201111111120111111112011111111201111111120111111112011111111222222222220111111112011111111201111111120111111112011111111201111111120111111112011111111)r1rr\r]r^)rr3r_r )rYr!�test_ltbs
zPluralFormsTestCase.test_ltcs:|j}tjd��dj�fdd�td�D��}||d�dS)NzPn%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2rVcsg|]}t�|���qSr )rW)rXrR)rYr r!rZksz/PluralFormsTestCase.test_ru.<locals>.<listcomp>r[Z�20111222222222222222201112222220111222222011122222201112222220111222222011122222201112222220111222222011122222222222222220111222222011122222201112222220111222222011122222201112222220111222222011122222)r1rr\r]r^)rr3r_r )rYr!�test_ruhs
zPluralFormsTestCase.test_rucs:|j}tjd��dj�fdd�td�D��}||d�dS)Nz#(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2rVcsg|]}t�|���qSr )rW)rXrR)rYr r!rZqsz/PluralFormsTestCase.test_cs.<locals>.<listcomp>r[Z�20111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222)r1rr\r]r^)rr3r_r )rYr!�test_csns
zPluralFormsTestCase.test_cscs:|j}tjd��dj�fdd�td�D��}||d�dS)Nz@n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2rVcsg|]}t�|���qSr )rW)rXrR)rYr r!rZwsz/PluralFormsTestCase.test_pl.<locals>.<listcomp>r[Z�20111222222222222222221112222222111222222211122222221112222222111222222211122222221112222222111222222211122222222222222222111222222211122222221112222222111222222211122222221112222222111222222211122222)r1rr\r]r^)rr3r_r )rYr!�test_plts
zPluralFormsTestCase.test_plcs:|j}tjd��dj�fdd�td�D��}||d�dS)Nz:n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3rVcsg|]}t�|���qSr )rW)rXrR)rYr r!rZ}sz/PluralFormsTestCase.test_sl.<locals>.<listcomp>r[Z�30122333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333012233333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333)r1rr\r]r^)rr3r_r )rYr!�test_slzs
zPluralFormsTestCase.test_slcs:|j}tjd��dj�fdd�td�D��}||d�dS)NzNn==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 ? 4 : 5rVcsg|]}t�|���qSr )rW)rXrR)rYr r!rZ�sz/PluralFormsTestCase.test_ar.<locals>.<listcomp>r[Z�01233333333444444444444444444444444444444444444444444444444444444444444444444444444444444444444444445553333333344444444444444444444444444444444444444444444444444444444444444444444444444444444444444444)r1rr\r]r^)rr3r_r )rYr!�test_ar�s
zPluralFormsTestCase.test_arcCs�|j}|ttjd�|ttjd�|ttjd�|ttjddd�|jtjddd�d�d	�|ttjd
dddd�|ttjd
dddd�|jtjd�d�d�dS)Nzos.chmod('/etc/passwd',0777)z"(eval(foo) && ""zf"{os.system('sh')}"zn+i'�n�drO�e�(�)�z((((((((((((((((((((z((((((((((((((((((((nz))))))))))))))))))))z)((((((((((((((((((((n)))))))))))))))))))))rE�
ValueErrorrr\r1)rZraisesr r r!�
test_security�sz!PluralFormsTestCase.test_securitycs�tjd��|jdj�fdd�td�D��d�tjd��|jdj�fdd�td�D��d	�tjd
��|jdj�fdd�td�D��d�tjd��|jdj�fd
d�td�D��d�dS)Nzn == n == nrVc3s|]}t�|��VqdS)N)rW)rXrR)rYr r!�	<genexpr>�sz>PluralFormsTestCase.test_chained_comparison.<locals>.<genexpr>�Z010z
1 < n == nc3s|]}t�|��VqdS)N)rW)rXrR)rYr r!rv�sZ100z
n == n < 2c3s|]}t�|��VqdS)N)rW)rXrR)rYr r!rv�sz	0 < n < 2c3s|]}t�|��VqdS)N)rW)rXrR)rYr r!rv�sZ111)rr\r1r]r^)rr )rYr!�test_chained_comparison�s
$
$
$
z+PluralFormsTestCase.test_chained_comparisoncCs|jtjd�d�d�dS)NZ0123rO�{)r1rr\)rr r r!�test_decimal_number�sz'PluralFormsTestCase.test_decimal_numbercCsTddddddddd	d
ddd
ddg}x,|D]$}|jt��tj|�WdQRXq(WdS)Nzx>1z(n>1zn>1)z
42**42**42Z0xaz1.0Z1e2zn>0x1z+nz-nzn()zn(1)z1+Znnzn n)rErtrr\)rZinvalid_expressions�exprr r r!�test_invalid_syntax�s

z'PluralFormsTestCase.test_invalid_syntaxcCs\|jtjd�d�d�|jtjd�d�d�|jtjd�d�d�|jtjd�d�d�dS)Nz	n?1?2:3:4r�rOrPz	n?1:3?4:5)r1rr\)rr r r!�test_nested_condition_operator�sz2PluralFormsTestCase.test_nested_condition_operatorcCs\tjd�}|j|d�d�|j|d�d�|j|d�d�|j|d�d�|jt|d�dS)	Nz2/n*3rO�rPrwr���i����)rr\r1rE�ZeroDivisionError)rrYr r r!�
test_division�s
z!PluralFormsTestCase.test_divisioncCs�tjd�}|j|d�d�|j|d�d�|j|d�d�|j|d�d�|j|d�d�|jt|d�|jt|d	�|jt|g�|jt|t��dS)
Nzn != 1rOrrPg�?g@g�������?�2�2)rr\r1rE�	TypeError�object)rrYr r r!�test_plural_number�s
z&PluralFormsTestCase.test_plural_numberN)r&r'r(r"rSrTr`rarbrcrerfrgrhrirjrkrlrmrurxrzr|r~r�r�r r r r!rN s.	rNc@sTeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�ZdS)�LGettextTestCasecCstj|�t|_dS)N)rr"r
r,)rr r r!r"�s
zLGettextTestCase.setUpcCsTtj}tj}|j|d�d�|j|d�d�|j|dd�d�|j|dd�d�dS)Nr/sbacon�spamsspamr)rr:�	ldgettextr1)rr:r�r r r!�
test_lgettext�szLGettextTestCase.test_lgettextc
CsLt|jd��}tj|�}WdQRX|j}|j|d�d�|j|d�d�dS)Nr9r/sbaconr�sspam)rr,rr<r:r1)rrr>r:r r r!�test_lgettext_2�s
z LGettextTestCase.test_lgettext_2cCs�tj}tj}tjd�}zltjdd�|j|d�djd��|j|d�djd��|j|dd�djd��|j|dd�djd��Wdtjd=tjd|�XdS)Nrzutf-16r/r0r�)rr:r��bind_textdomain_codesetr1�encode�_localecodesets)rr:r��
saved_codesetr r r!�%test_lgettext_bind_textdomain_codeset�s
z6LGettextTestCase.test_lgettext_bind_textdomain_codesetcCsbt|jd��}tj|�}WdQRX|j}|jd�|j|d�djd��|j|d�djd��dS)Nr9zutf-16r/r0r�)rr,rr<r:�set_output_charsetr1r�)rrr>r:r r r!�test_lgettext_output_encoding�s
z.LGettextTestCase.test_lgettext_output_encodingcCs�tj}tj}|ddd�}|j|d�|ddd�}|j|d�|ddd�}|j|d	�|ddd�}|j|d
�|dddd�}|j|d�|dddd�}|j|d�|dddd�}|j|d	�|dddd�}|j|d
�dS)NzThere is %s filezThere are %s filesrOsHay %s ficherorPsHay %s ficheroszThere is %s directoryzThere are %s directoriessThere is %s directorysThere are %s directoriesr)r�	lngettext�
ldngettextr1)rr�r�rRr r r!�test_lngettext�s$zLGettextTestCase.test_lngettextcCs�t|jd��}tj|�}WdQRX|j}|ddd�}|j|d�|ddd�}|j|d�|dd	d�}|j|d
�|dd	d�}|j|d�dS)Nr9zThere is %s filezThere are %s filesrOsHay %s ficherorPsHay %s ficheroszThere is %s directoryzThere are %s directoriessThere is %s directorysThere are %s directories)rr,rr<r�r1)rrr>r�rRr r r!�test_lngettext_2sz!LGettextTestCase.test_lngettext_2cCs<tj}tj}tjd�}�ztjdd�|ddd�}|j|djd��|ddd�}|j|djd��|d	d
d�}|j|d	jd��|d	d
d�}|j|d
jd��|dddd�}|j|djd��|dddd�}|j|djd��|dd	d
d�}|j|d	jd��|dd	d
d�}|j|d
jd��Wdtjd=tjd|�XdS)Nrzutf-16zThere is %s filezThere are %s filesrOzHay %s ficherorPzHay %s ficheroszThere is %s directoryzThere are %s directories)rr�r�r�r1r�r�)rr�r�r�rRr r r!�&test_lngettext_bind_textdomain_codesets.
z7LGettextTestCase.test_lngettext_bind_textdomain_codesetcCs�t|jd��}tj|�}WdQRX|j}|jd�|ddd�}|j|djd��|ddd�}|j|djd��|d	d
d�}|j|d	jd��|d	d
d�}|j|d
jd��dS)Nr9zutf-16zThere is %s filezThere are %s filesrOzHay %s ficherorPzHay %s ficheroszThere is %s directoryzThere are %s directories)rr,rr<r�r�r1r�)rrr>r�rRr r r!�test_lngettext_output_encoding-s
z/LGettextTestCase.test_lngettext_output_encodingN)r&r'r(r"r�r�r�r�r�r�r�r�r r r r!r��s
r�c@seZdZdd�ZdS)�GNUTranslationParsingTestcCsJttd��}|jtjt��WdQRXttd��}tj|�}WdQRXdS)Nrr9)rr
rrr�GNU_MO_DATA_ISSUE_17898rr<)rrr>r r r!�!test_plural_form_error_issue17898=sz;GNUTranslationParsingTest.test_plural_form_error_issue17898N)r&r'r(r�r r r r!r�<sr�c@s$eZdZdd�Zdd�Zdd�ZdS)�UnicodeTranslationsTestc	Cs:tj|�ttd��}tj|�|_WdQRX|jj|_dS)Nr9)rr"rrrr<r>r2)rrr r r!r"Fs
zUnicodeTranslationsTest.setUpcCs|j|jd�t�dS)NrV)ZassertIsInstancer2rW)rr r r!�test_unicode_msgidLsz*UnicodeTranslationsTest.test_unicode_msgidcCs|j|jd�d�dS)NuabÞu¤yz)r1r2)rr r r!�test_unicode_msgstrOsz+UnicodeTranslationsTest.test_unicode_msgstrN)r&r'r(r"r�r�r r r r!r�Esr�c@seZdZdd�Zdd�ZdS)�WeirdMetadataTestcCsLtj|�ttd��.}ytj|�|_Wn|j��YnXWdQRXdS)Nr9)rr"rrrr<r>r%)rrr r r!r"Ts
zWeirdMetadataTest.setUpcCs.|jj�}|jt|�d�|j|dd�dS)N�	zlast-translatorz=John Doe <jdoe@example.com>
Jane Foobar <jfoobar@example.com>)r>�infor1�len)rr�r r r!�test_weird_metadata]s

z%WeirdMetadataTest.test_weird_metadataN)r&r'r(r"r�r r r r!r�Ss	r�c@seZdZdd�ZdS)�DummyGNUTranslationscCsdS)N�foor )rr r r!r�eszDummyGNUTranslations.fooN)r&r'r(r�r r r r!r�dsr�c@seZdZdd�ZdS)�GettextCacheTestCasecCs�tj|_t|_|jttj�d�tj	d|j�}|jttj�d�tj	d|jt
d�}|jttj�d�|j|jt
�tj	d|jt
d�}|jttj�d�|j|jt
�dS)NrrrO)Zclass_rP)rr*r+r
r,r1r�rrZtranslationr��	__class__)rr>r r r!�
test_cachejs

zGettextCacheTestCase.test_cacheN)r&r'r(r�r r r r!r�isr�c@seZdZdd�ZdS)�MiscTestCasecCsddh}tj|t|d�dS)Nr\�ENOENT)�	blacklist)rZcheck__all__r)rr�r r r!�test__all__�szMiscTestCase.test__all__N)r&r'r(r�r r r r!r��sr�cCstjt�dS)N)rZrun_unittestr&r r r r!�	test_main�sr��__main__)$rrrZlocaleZunittestZtestrrrrrrrr]r
r
rrrrZTestCaserr�r)r@rNr�r�r�r�r<r�r�r�r�r&r r r r!�<module>sBFJ)t	
u

Youez - 2016 - github.com/yon3zu
LinuXploit