python (3.12.0)

(root)/
lib/
python3.12/
test/
__pycache__/
test_strptime.cpython-312.opt-2.pyc

ΑeZ	ddlZddlZddlZddlZddlZddlZddlmZddlm	Z	ddl
mZddl
Z
GddejZGddejZGd	d
ejZGddejZGd
dejZGddejZGddejZGddejZedk(rej0yy)N)support)skip_if_buggy_ucrt_strfptime)dateceZdZ	dZy)
getlang_Testsc|jtjtjtj
yN)assertEqual	_strptime_getlanglocale	getlocaleLC_TIMEselfs F/BuggyBox/python/3.12.0/bootstrap/lib/python3.12/test/test_strptime.py
test_basiczgetlang_Tests.test_basics*++-v/?/?/OPN)__name__
__module____qualname__rrrrrsQrrc~eZdZ	dZdZdZdZdZeje
jddZdZ
d	Zy
)LocaleTime_Testscj	tj|_tj|_yr	)time	localtime
time_tupler
LocaleTimeLT_insrs rsetUpzLocaleTime_Tests.setUps#6..***,rc		tj||jj}||j|}|j	||d|z|j|||d|d|y)Nz%s: not found in tuplez#: position within tuple incorrect;  != )rstrftimerlowerassertInr
)rtesting	directivetuple_position	error_msgstrftime_output
comparisons       rcompare_against_timez%LocaleTime_Tests.compare_against_time!sq	--	4??CIIKT__^<=


ow.:	<_#ZB	Crc|j|jjddd|j|jjdddy)N%Az#Testing of full weekday name failed%az*Testing of abbreviated weekday name failed)r-r 	f_weekday	a_weekdayrs rtest_weekdayzLocaleTime_Tests.test_weekday/sH	
!!$++"7"7q"G	I!!$++"7"7q"N	Prc|j|jjddd|j|jjdddy)N%Bz&Testing against full month name failedz%bz-Testing against abbreviated month name failed)r-r f_montha_monthrs r
test_monthzLocaleTime_Tests.test_month7sH	
!!$++"5"5tQ"J	L!!$++"5"5tQ"Q	Src0tjd|jj}|j	||j
jd|jddkrd}nd}|j|j
j||dy)Nz%pz!AM/PM representation not in tuplerr7z;AM/PM representation in the wrong position within the tuple)rr$rr%r&r am_pmr
)rr+positions   r
test_am_pmzLocaleTime_Tests.test_am_pm?s{--doo>DDF

ot{{'8'89	;??1"qHh**84oV	Xr(musl libc issue on Emscripten, bpo-46390c*tjd|jj}|rc|j	||j
jdvxs||j
jdvd|d|j
jyy)N%Zrr7z	timezone z not found in )rr$rr%
assertTruer timezone)rrEs  r
test_timezonezLocaleTime_Tests.test_timezoneIs}
==t7==?OOH(<(<Q(??@$(<(<Q(??%t{{';';=
>rc\d}tjd|}|jtj|jj||dtjd|}|jtj|jj
||dtjd|}|jtj|jj||dtj}d|_	|j|jd	y)
N)	ir<,7Lrz%czLC_date_time incorrectz%xzLC_date incorrectz%XzLC_time incorrect)rNz6LocaleTime's LC directives cannot handle empty strings)rr$r
r LC_date_timeLC_dateLC_timerrr>rD)r
magic_dater+LTs    rtest_date_timezLocaleTime_Tests.test_date_timeUs9
--j9t{{'?'?L(*B	D--j9t{{':':JG(*=	?--j9t{{':':JG(*=	?

!
!
#

%4	5rct|j|jjtjyr	)r
r langrrrs r	test_langzLocaleTime_Tests.test_langks'	
))9+=+=+?@rN)rrrr!r-r4r:r@unittestskipIfr
is_emscriptenrFrTrWrrrrrsZ-
CPSXX__I>>5,ArrcHeZdZ	dZdZdZedZdZdZ	dZ
dZy	)
TimeRETestscj	tj|_tj|_yr	)rTimeREtime_rerlocale_timers rr!zTimeRETests.setUpts&. '')$//1rc|jjd}|j|j|jj
ddk7d|z|j|j|jjddk7d|z|j|j|jddk7d|zy)	Nz%a %A %drLz7did not find abbreviated weekday in pattern string '%s'z0did not find full weekday in pattern string '%s'dz.did not find 'd' directive pattern string '%s')r_patternrDfindr`r3r2rpattern_strings  rtest_patternzTimeRETests.test_patternys--k:++D,<,<,F,Fq,IJbPQ'(	)	
++D,<,<,F,Fq,IJbPJ'(	)	
++DLL,=>"DH'(	)rcf|jjd}|jd|d|zy)Nz\d+z\\d\+z/%s does not have re characters escaped properly)r_rer&rgs  rtest_pattern_escapingz!TimeRETests.test_pattern_escapings3--f5

hG$%	&rc
|jjdj|jjd}|j|xr+|j
d|jjdk(d|jjd}|j|jjdd|jjd}|j|d|jd	|jjdd|jjdd
|j|j
d|jjdk(xr+|j
d|jjdk(d
|jd|jjd|j
dd|j
dd	dD]}|jjd|z}|jtjd|z}|j|dtjd|zd|jdy)Nr/r0Azre object for '%A' failedz%a %brc zMatch failed with 'z
' regex and 'z' stringabz:re object couldn't find the abbreviated weekday month in 'z	' using 'z'; group 'a' = 'z', group 'b' = ')rormrpBcrdGHIjmMpSuUVwWxXyYZ%rzMatching failed on 'z' regex)r_compilematchr`r2rDgroupr3r9restringrerr$)rfoundcompiledr(s    rtest_compilezTimeRETests.test_compiles$$U+11$2B2B2L2LQ2OPS%++c"2d6F6F6P6PQR6S"S3	5<<''1$*:*:*D*DQ*G#//77: <=4+;+;+E+Ea+H+/+;+;+C+CA+F!H
I	J	
C(D,<,<,F,Fq,IIIS)T-=-=-E-Ea-HH ,,(8(8%++c:J++c*,	-K	8I||++C)O<HNN4==y#ABEOOE%)]]3?%C%-%5%5$7
8		8rctj}ttf|_|j	tj
|j
dddy)NrCrNz6with timezone == ('',''), TimeRE().pattern('%Z') != '')rr	frozensetrEr
r^re)rtest_locales  rtest_blankpatternzTimeRETests.test_blankpatternsO **, )Y[9))+6>>tDbQ	Src|jjd}|jd}|j|dy)Nz\w+ %mz\w+ 10z"Escaping failed of format '\w+ 10')r_rrrD)rcompiled_rers   rtest_matching_with_escapesz&TimeRETests.test_matching_with_escapess5ll**95!!),DErctj}tdtdf|_tj|}|j|j
djddy)N)utcgmtTokyo (standard time)zTokyo (daylight time)rCrzFlocale data that contains regex metacharacters is not properly escaped)rrrrEr^rDrr)rr`r_s   r'test_locale_data_w_regex_metacharactersz3TimeRETests.test_locale_data_w_regex_metacharactersso **, )+E!F )*A B D"";/-334KL,	-rc|jjd}|jtj|d|jtj|dy)Nz%j %H180z18 0)r_reassertFalserrrD)rres  rtest_whitespace_substitutionz(TimeRETests.test_whitespace_substitutionsH,,&&w/'512&12rN)rrrr!rirkrrrrrrrrrr\r\qs>2
)&"8"84SF-3rr\c4eZdZ	dZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZdZdZeej*ej.ddZej2eedddZdZdZdZdZ dZ!dZ"dZ#dZ$dZ%y) 
StrptimeTestsc8	tj|_yr	rgmtimerrs rr!zStrptimeTests.setUps(++-rc	|jttjdddD]-}	tjd||j	d|z/|jt5tjd
dddd|jt5tjdd
ddddD]E}|jt5tjddj|dddG|jt5tjddddd|jt5tjdddddgd}|D]P}|j|5|jt5tj|dddddddRy#t$rYt
$r7}|j	d|d|jjd	Yd}~d}~wwxYw#1swYxYw#1swYqxYw#1swY|xYw#1swY
xYw#1swYxYw#1swYxYw#1swYxYw)N%dr/)data_stringformat)rz% z%e2005z'%s' did not raise ValueErrorrqz	' raised z, not ValueErrorz1999 50z%Y %Vz1999 51%G %Vrmrorr|z%G %{}2015z%Gz1999 256z%G %j)z	2019-00-1z	2019-54-1z	2021-53-1z%G-%V-%u)
assertRaises
ValueErrorr_strptime_timefail	Exception	__class__rrsubTest)r
bad_formaterrrinvalid_iso_weeksinvalid_iso_dtstrs      rtest_ValueErrorzStrptimeTests.test_ValueErrorsT*i&>&>D!%		'+		HJ
H((<		9JFG		H

z
*	4	73	4

z
*	4	73	4&	BA"":.
B##Ihooa.@A
B
B	B

z
*	.-	.

z
*	5
G4	5

"3	G/0
G&&z2G''(9:FG
G
G	GA

B		')?)?ABB
B	4	4	4	4
B
B	.	.	5	5GG
G
Gs}G/H#H)&H6!III($I;I(	HH",HHH&)H36I	I
II%!I((I1	c|jt5}tjddddd|j	j
jd|jt5}tjddddd|j	|j
jdy#1swYxYw#1swY<xYw)NrNz%DT19z%Y %)rrrrassertIs	exception__suppress_context__)res  rtest_strptime_exception_contextz-StrptimeTests.test_strptime_exception_contexts


z
*	/a$$R.	/

akk66=


z
*	3a$$T62	3

akk66=
	/	/	3	3sB60C6B?CcP|jttjddy)Nz10 12%m)rrrrrs rtest_unconverteddataz"StrptimeTests.test_unconverteddatas*i&>&>Nrc	tjd|z|j}tj|d|z}|j|||j|k(d|d|d||d|j|y)Nrztesting of 'z' directive failed; '' -> r#rr$rrrrD)rr(r?strf_outputstrp_outputs     rhelperzStrptimeTests.helpersq$mmC)OT__E..{C)OLH-1JJ#[+h2G//(35	6rc
dD]}|j|ddD]R\}}|D]H}tj|d}|t|z}|j	|d|k(d|d|ddJTy)N)rrr))l)6999)i)0068z%yz'y' test failed; passed in 'z' and returned 'rq)rrrintrD)rr(centuryboundsboundrexpected_results       r	test_yearzStrptimeTests.test_years#	&IKK	1%	& L	OOGV
O'66udC")CJ"6A/ A7<k!n!NO
O	Orc6dD]}|j|dy)N)rrrprxr7rrr(s  rr:zStrptimeTests.test_month%s(	&IKK	1%	&rc(|jddy)NrdrLrrs rtest_dayzStrptimeTests.test_day*Crc
|jddtjd|j}t	j
|d}|j
|d|jdk(d|d|dd|jdy)Nrur<%I %pz&testing of '%I %p' directive failed; 'rr#)rrr$rrrrDrrrs   r	test_hourzStrptimeTests.test_hour.sqCmmGT__=..{GDA$//!*<<%{1~tq7IK	Lrc(|jddy)Nryrcrrs rtest_minutezStrptimeTests.test_minute7rrc(|jddy)Nr{rrs rtest_secondzStrptimeTests.test_second;rrc	ddl}|jddddddd}tjt|d	\}}}|j||jy)
Nrir="8i4z%Y-%m-%d %H:%M:%S.%f)r)datetimerstrr
microsecond)rrrdtupfrac_s      r
test_fractionzStrptimeTests.test_fraction?sRdBBB> **3q6:PQT1q}}-rc6dD]}|j|dy)Nrr0rrs  rr4zStrptimeTests.test_weekdayFs-	%IKK	!$	%rc(|jddy)Nrwrrs rtest_julianzStrptimeTests.test_julianKrrcxd}d}d}tjdd\^}}}}|j|||z|j|dtjdd\^}}}}|j|||j|dtjdd\^}}}}|j|||z|z|j|dtjd	d\^}}}}|j|||z|z|j|d
tjdd\^}}}}|j|||j|dtjdd\^}}}}|j|||z|j|dtjd
d\^}}}}|j|||z|z|j|dtjdd\^}}}}|j|||z|z|j|d
tjdd\^}}}}|j|||z|z|j|dtjdd\^}}}}|j|d|j|dy)Niiz+0130%zrz-0100z-013030z-013030.000001rbz+01:00z-01:30z	-01:30:30z-01:30:30.000001z
+01:30:30.001ir)rr
)rone_hour	half_hourhalf_minuteroffsetoffset_fractions       rtest_offsetzStrptimeTests.test_offsetOs	+4+>+>w+M(!VaI!56!,+4+>+>w+M(!Va(+!,+4+>+>y$+O(!Va8i#7+#E!FG!,+4+>+>?OQU+V(!Va8i#7+#E!FG"-+4+>+>x+N(!Va*!,+4+>+>x+N(!Va8i#7!89!,+4+>+>{D+Q(!Va8i#7+#E!FG!,+4+>+>?QSW+X(!Va8i#7+#E!FG"-+4+>+>PT+U(!VaI!5!CD$/+4+>+>sD+I(!Va#!,rc|jt5tjddddd|jt5tjddddd|jt5tjddddd|jt5tjddddd|jt5}tjddddd|jdt	j
y#1swYxYw#1swYxYw#1swYxYw#1swYxYw#1swY_xYw)Nz
-01:30:30.rz-0130:30z-01:30:30.1234567z-01:30:30:123456z-01:3030z!Inconsistent use of : in -01:3030)rrrr
rr)rrs  rtest_bad_offsetzStrptimeTests.test_bad_offsetrs


z
*	4d3	4


z
*	2
D1	2


z
*	; 3T:	;


z
*	: 2D9	:


z
*	2c
D1	2<c#-->PQ	4	4	2	2	;	;	:	:	2	2s;D+
D7>E2E&E+D47EEEE$rAc
ftjdd}|j|jdtjdd}|j|jdt	j
}t	jd}tj|d}tj}tjdtjdk7stjs+|j|d|dk(d|d|dd	|dy|j|dd
k(dy)NUTCrCrGMTr7ztimezone check failed; 'rr#rbz]LocaleTime().timezone has duplicate values and time.daylight but timezone value not set to -1)rrr
tm_isdstrrr$rtznamedaylightrD)rrrrr`s     rrFzStrptimeTests.test_timezones ..ud;--q1..ud;--q1^^%
mmD)..{DA**,;;q>T[[^+4==OOKNjm;);q>:a=J
K
OOKNb0N
Ortzsetz"time module has no attribute tzsetcltjd}|jdvr|jdt	j
td||f5t	j
tdd5t	j
tdd5||ft_dt_tj|d	d
}|j|dtjd|d
tjd|dddddddddy#1swYxYw#1swYxYw#1swYyxYw)Nr)rrzneed non-UTC/GMT timezonerrr7rcyr	rrrr<lambda>z1StrptimeTests.test_bad_timezone.<locals>.<lambda>srrCrrbz lead to a timezone value of z) instead of -1 when time.daylight set to z and passing in )
rrupperskipTestr	swap_attrrrrr
)rtz_nametz_values   rtest_bad_timezonezStrptimeTests.test_bad_timezones
++a.==?n,MM56


tX/A
B		E


tZ
3		E


tWl
;		E#G,DKDM //>qAHXr[[(DMM7D
E
		E		E		E		E		E		E		E		E		Es=D*0D
A,D9DD*DDD'	#D**D3cHtdD]}|jd|y)Nr0rsrangerrr?s  rrTzStrptimeTests.test_date_times#a	'HKKX&	'rcJtddD]}|jd|y)Nrr<rrrs  r	test_datezStrptimeTests.test_date%a
	'HKKX&	'rcJtddD]}|jd|y)Nr<r0rrrs  r	test_timezStrptimeTests.test_timerrctjd|j}tj|d}|j|d|jdk(xr|d|jdk(dy)Nz%m %% %Yrr7zhandling of percent sign failedrrs   rtest_percentzStrptimeTests.test_percentsemmJ@..{JGA$//!*<<>$Q4??1+==9	;rc|tjd|j}|jt	j
|j
dd|jt	j
|jdd|jt	j
|jddy)Nr6z0strptime does not handle ALL-CAPS names properlyz1strptime does not handle lowercase names properlyz/strptime does not handle capword names properly)	rr$rrDrrrr%
capitalize)rrs  rtest_caseinsensitivez"StrptimeTests.test_caseinsensitivesmmD$//:	001B1B1DdKJ	L	001B1B1DdKK	M	001G1G1I4PI	Krcjd}tjdd}|j||k(d|d|y)N)	rr7r7rrrrr7rb1rz-Default values for strptime() are incorrect; r#)rrrD)rdefaultsrs   r
test_defaultszStrptimeTests.test_defaultss62..sD9x/'2H>	?rcRd}|jtj||y)Nz.^$*+?{}\[]|)()rDrr)r
need_escapings  r
test_escapingzStrptimeTests.test_escapings"*
	00
NOrc0tjddy)NFeb 29%b %d)rstrptimers r$test_feb29_on_leap_year_without_yearz2StrptimeTests.test_feb29_on_leap_year_without_years

h(rcx|jtjddtjddy)Nr$r%zMar 1)
assertLessrr&rs r7test_mar1_comes_after_feb29_even_when_omitting_the_yearzEStrptimeTests.test_mar1_comes_after_feb29_even_when_omitting_the_years*

h0

gw/	1rN)&rrrr!rrrrrr:rrrrrr4rrrrrXrYrrZrF
skipUnlesshasattrrr
rTrrrrrr"r'r*rrrrrs'(*GZ>O6O&
L.%
!-FR"X__IO"O,Xg D
E
E$'
'
'
;K?P)1rrceZdZ	dZy)Strptime12AMPMTestsc|j}|tjdddd|tjdddd|tjdddd|tjddddy)Nz12 PMrr<r=z12 AMr)r
rr&rr)reqs  rtest_twelve_noon_midnightz-Strptime12AMPMTests.test_twelve_noon_midnightsy



4=='*1-r2
4=='*1-q1
9##GW5a8"=
9##GW5a8!<rN)rrrr1rrrr.r.s
C=rr.ceZdZ	dZy)JulianTestsc|j}tddD]%}|tjd|zdd|'y)Nr7ioz%d 2004z%j %Yr)r
rrr)rr0is   rtest_all_julian_daysz JulianTests.test_all_julian_dayssD


q#	GAy''	A
w?BAF	GrN)rrrr6rrrr3r3sJGrr3ceZdZ	dZedZedZedZejrdZ
dZndZ
dZejejj!dd	d
ZdZy)
CalculationTestsc6tj|_yr	rrs rr!zCalculationTests.setUps++-rcd}tjtj||j|}|j|j|jjk(d|jd|jjy)Nz%Y %m %d %H %M %S %w %ZzCalculation of tm_yday failed; r#)rrrr$rrDtm_ydayr
format_stringresults   rtest_julian_calculationz(CalculationTests.test_julian_calculationsh2
))$--
t*W$13$//*A*AA ..$//*A*AC	DrcBd}tjtj||j|}|j|j|jjk(xrH|j|jjk(xr#|j|jjk(d|jd|jd|jd|jjd|jjd|jjy)Nz%Y %H %M %S %w %j %Zz&Calculation of Gregorian date failed; -r#)	rrrr$rrDtm_yeartm_montm_mdayr<s   rtest_gregorian_calculationz+CalculationTests.test_gregorian_calculations/
))$--
t*W$13$//*A*AAC$//*@*@@C4??+B+BB!..&--//114??3I3I//11	3	4rcd}tjtj||j|}|j|j|jjk(d|jd|jjy)Nz%Y %m %d %H %S %j %Zz'Calculation of day of the week failed; r#)rrrr$rrDtm_wdayr<s   rtest_day_of_week_calculationz-CalculationTests.test_day_of_week_calculationsh/
))$--
t*W$13$//*A*AA'-~~t7N7NP	Qr)qr7r7rr=r=}r=rM)rraixzbpo-29972: broken test on AIXcxfd}|dd|dd|dd|dd	|d
d|dd
|dd|dd|dd|dd|dd|dd|dd|dd|dd|dd|d d!|d"d#|d$d%|d&d'y)(Nc	dD]}|	jvr|	jvrydD]}|dz|z}	j|||5t|}|j	|}tj||}|d|dd|jd}	j|dd||dddy#1swYxYw)	N)z%Y %Wz%Y %Ur)z%wz%ur1r/rn)rrz: rr#r<)	_formats_excluded
_ymd_excludedr
datetime_dater$rr	timetupler
)
	ymd_tupletest_reasonyear_week_formatweekday_formatr=dt_date
strp_inputrmsgrs
         rtest_helperzSCalculationTests.test_week_of_year_and_day_of_week_calculation.<locals>.test_helper4s$?
J $(>(>>!T%7%77&>JN$4s$:^$KMk+4-:&<
J#0";%,%5%5m%D
&/&>&>z?L'N0:0;A070A0A0CA0FH((Ra)SI
J
JJ	
J
J
Js
A$B77C)mr7r<zweek 0)rbr7rzcommon case)rbr7
z
day on Sunday)rbr7z
day on MondayrIzJan 1 on Sunday)rLr7r7zJan 1 on Monday)rLr7rz)first Sunday in a year starting on Monday)rJr=rMzDec 31 on SundayrKzDec 31 on MondayrNz#Monday in the last week of the year)rOr=rIz-Monday in the second-to-last week of the year)i
zrandomly chosen date)ir=zEyear starting and ending on Monday while date not on Sunday or Monday)rRr=rHzXyear starting and ending on Monday with a Monday not at the beginning or end of the yearrQz8Dec 31 on Monday with year starting and ending on Monday)r7rzFirst Sunday of 2007)rhr7rdzSecond Sunday of 2007)r=rMzLast Sunday of 2006)rir=zSecond to last Sunday of 2006r)rras` r-test_week_of_year_and_day_of_week_calculationz>CalculationTests.test_week_of_year_and_day_of_week_calculation/s
	J$	L(+L-0M?3M?3L"34L"34L"MNN$67N$67N$IJN%+	,N$:;N$:;N%G	HN%6	7	N%;	<L"89M#:;N$9:N$CDrcfd}|dddddddddd	
|dd
ddd
ddddd
|dddddddddd
|dddddddddd
|dd
dddddddd
|dddddddddd
|dddddddddd
|dd
dddddddd
|dddddddddd
|dddddddddd
|dd
dddddddd
|dddddddddd
|dddddddddd
|dd
dddddddd
|ddddddddd
d
|d dddddddd
d
|d d
ddddddd
d
|d!dddddddd"d
|d#dddddddd"d
|d#d
ddddddd"d
|d$dddd
ddddd
|d%dd&ddddddd
|d%d
d'dd
ddddd
|d(dd&ddddddd
|d)dd&ddddddd
|d)d
d&ddddddd
|d*dd&ddddddd
|d+dd&ddddddd
|d+d
d&ddddddd
|d,dd&ddddddd-
|d.dd&ddddddd-
|d.d
d&ddddddd-
|d/dd'ddddddd
|d0dd'ddddddd
|d0d
d'ddddddd
|d1dd'dddddd
d
|d2dd'dddddd
d
|d2d
d'dddddd
d
|d3dd'dddddd"d
|d4dd'dddddd"d
|d4d
d'dddddd"d
|d5dd'dd
ddddd
y)6NcXjtj||dd|y)Nrb)r
rr)valuerexpectedrs   rcheckz+CalculationTests.test_week_0.<locals>.checkas'Y55eVDSbI8Trz2015 0 0z%Y %U %wir=rr0ijz%Y %W %wir7rcz2015 1 1z%G %V %urPikz2015 0 1z2015 1 2rilz2015 0 2z2015 1 3rMrLimz2015 0 3z2015 1 4r<z2015 0 4z2015 1 5z2015 0 5z2015 1 6rz2015 0 6z2015 1 7z2009 0 0rOiz2009 1 1z2009 0 1z2009 1 2z2009 0 2z2009 1 3inz2009 0 3z2009 1 4z2009 0 4z2009 1 5z2009 0 5z2009 1 6z2009 0 6z2009 1 7r)rrps` rtest_week_0zCalculationTests.test_week_0`sM	U
j*dBAq!QD
j*dAq!Q1a@
j*dBAq!QD
j*dBAq!QD
j*dBAq!QD
j*dBAq!QD
j*dBAq!QD
j*dBAq!QD
j*dBAq!QD
j*dBAq!QD
j*dBAq!QD
j*dAq!Q1a@
j*dAq!Q1a@
j*dAq!Q1a@
j*dAq!Q1a@
j*dAq!Q1a@
j*dAq!Q1a@
j*dAq!Q1a@
j*dAq!Q1a@
j*dAq!Q1a@
j*dAq!Q1a@
j*dBAq!QD
j*dAq!Q1a@
j*dBAq!QD
j*dBAq!QD
j*dBAq!QD
j*dBAq!QD
j*dBAq!QD
j*dBAq!QD
j*dBAq!QD
j*dBAq!QD
j*dBAq!QD
j*dAq!Q1a@
j*dAq!Q1a@
j*dAq!Q1a@
j*dAq!Q1a@
j*dAq!Q1a@
j*dAq!Q1a@
j*dAq!Q1a@
j*dAq!Q1a@
j*dAq!Q1a@
j*dAq!Q1a@rN)rrrr!rr?rErHr
is_androidrWrVrXrYsysplatform
startswithrkrrrrrr8r8s>("D"D"4"4"Q"Q(
&
X__S\\,,U346-E6-E^-Arr8cVeZdZ	dZdZdZdZejddZ	y)
CacheTestscxtjddtjdddtjj_tj}tjdd|j|tj|j
ttjdy)N10rrz%YNir7)	rr
_TimeRE_cacher`rVassertIsNotr
len_regex_cache)roriginal_time_res  rtest_time_re_recreationz"CacheTests.test_time_re_recreations	  t,  .37	++0$22  t,)9+B+BCY334a8rc	tjd=d}ttjtjkrCdtj|<|dz
}ttjtjkrCtj
dd|j
ttjdy#t$rYwxYw)Nrrr7rz)rrKeyErrorr~_CACHE_MAX_SIZErr
)r	bogus_keys  rtest_regex_cleanupzCacheTests.test_regex_cleanups	&&t,	)(()Y-F-FF04I""9-NI)(()Y-F-FF	  t,Y334a8		sC	C
Cctjj}dtjj_tjdd|j|tjjy)Nr{rzr)rr|r`rVrr})rlocale_time_ids  rtest_new_localetimezCacheTests.test_new_localetimesU#00<<37	++0  t,)@)@)L)LMrctjtj}	tjtjd	t
jddtj}	tjtjdt
jddtj}|j||tjtj|y#tj$r|jdYwxYw#tj$r|jdYuwxYw#tjtj|wxYw)N)en_USUTF8ztest needs en_US.UTF8 localerzr)de_DErztest needs de_DE.UTF8 locale)
r
rr	setlocaleErrorr	rrr|r})rlocale_info
first_time_resecond_time_res    rtest_TimeRE_recreation_localez(CacheTests.test_TimeRE_recreation_locales&&v~~6	:V^^->?	:$$T40%33M
>  1BC((t4!*!8!8  ?
V^^[9-||	:MM89	:"<<
>

<=
>

V^^[9s<$C2
&E1AD2$DD$EEEE&E,zSTD-1DST,M4.1.0,M10.1.0ctj}tjtjdd}|j	|j
dtjtjdd}|j	|j
dtj}dtjd<tjtjtjdd}|j	|j
dtjtjdd}|j	|j
dtj}|j|||jt5tj|ddddd|jt5tj|dddddy#1swYAxYw#1swYyxYw)NrrCr7zEST+05EDT,M3.2.0,M11.1.0TZ)
rrrrr
rr|osenvironrr}rr)r	oldtznametmrrs     rtest_TimeRE_recreation_timezonez*CacheTests.test_TimeRE_recreation_timezonesuKK	

%
%dkk!nd
;a(

%
%dkk!nd
;a(!//
5

4



%
%dkk!nd
;a(

%
%dkk!nd
;a("007


z
*	9$$Yq\48	9


z
*	9$$Yq\48	9	9	9	9	9	9sG%G1%G.1G:N)
rrrrrrrrrun_with_tzrrrrrxrxs<+	99N::W23949rrx__main__)rXrr
rrrttestrtest.supportrrrrXrTestCaserrr\rr.r3r8rxrmainrrr<module>rs%
		
5*QH%%Q
ZAx((ZAzY3(##Y3xY1H%%Y1v=(++=G(##GQAx((QAhY9""Y9xzHMMOr