mò
­fIc           @   s½   d  k  Z  d g e  i e  _ d k l Z l Z d  k Z d k l Z d  k  Z  d  k Z d  k	 Z	 d k
 l Z d  k Z d e i f d „  ƒ  YZ d „  Z d „  Z e d	 j o e ƒ  n d  S(
   Nt   .(   s   verboses   run_unittest(   s   Scanner(   s   proxyt   ReTestsc           B   s   t  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d	 „  Z
 d
 „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d  „  Z  d! „  Z! d" „  Z" d# „  Z# d$ „  Z$ d% „  Z% d& „  Z& d' „  Z' d( „  Z( d) „  Z) d* „  Z* d+ „  Z+ d, „  Z, d- „  Z- d. „  Z. d/ „  Z/ d0 „  Z0 d1 „  Z1 d2 „  Z2 d3 „  Z3 d4 „  Z4 d5 „  Z5 d6 „  Z6 d7 „  Z7 d8 „  Z8 RS(9   Nc         C   sG   d } t i d ƒ } t | ƒ } |  i | i d ƒ | i d ƒ ƒ d  S(   Nt   QabbbcRs   ab+c(	   t   st   ret   compilet   xt   proxyt   yt   selft   assertEqualt   findall(   R	   R   R   R   (    (    t)   /mit/python/lib/python2.4/test/test_re.pyt   test_weakref   s    c         C   sX  |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ i ƒ  d ƒ |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ i ƒ  d ƒ |  i t i d d ƒ d  ƒ |  i t i d	 d
 ƒ i d ƒ d ƒ |  i t i d	 d
 ƒ i ƒ  d ƒ |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ i ƒ  d ƒ |  i t i d d
 ƒ d  ƒ d  S(   Ns   x*t   axxi    s   x+i   i   R   t   aaas   a*t   xxxt   xxxas   a+(   i    i    (   i    i    (   i   i   (   i   i   (   i    i    (   i    i    (   i    i   (   i    i   (   R	   R
   R   t   searcht   spant   Nonet   match(   R	   (    (    R   t   test_search_star_plus   s    %"%"%"%"c         C   s#   t  | i d ƒ ƒ } t | d ƒ S(   Ni    i   (   t   intt   matchobjt   groupt	   int_valuet   str(   R	   R   R   (    (    R   t   bump_num&   s    c            sM  |  i t i d d d ƒ d ƒ |  i t i d |  i d ƒ d ƒ |  i t i d |  i d d ƒ d	 ƒ |  i t i d
 d „  d ƒ d ƒ |  i t i d
 d d ƒ d ƒ d ‰  |  i t i d ˆ  d ƒ d ƒ |  i t i d t i ˆ  ƒ d ƒ ˆ  ƒ |  i t i d ‡  d †  d ƒ ˆ  ƒ |  i t i d d d ƒ d ƒ |  i t i d d d ƒ d ƒ |  i t i d d d ƒ d ƒ |  i t i d d d ƒ d ƒ |  i t i d d d ƒ d ƒ |  i t i d d d ƒ d ƒ |  i t i d d d ƒ t d ƒ t d ƒ t d ƒ t d  ƒ t d! ƒ t d" ƒ ƒ |  i t i d# d$ d% ƒ d& ƒ d  S('   Ns   (?i)b+R   s	   bbbb BBBBs   x xs   \d+s   08.2 -2 23x99ys   9.3 -3 24x100yi   s   9.3 -3 23x99yR    c         C   s   d S(   Ns   \n(    (   t   m(    (    R   t   <lambda>1   s    s   \ns   
s   \1\1s   (.)t   xxc            s   ˆ  S(   N(   R   (   R   (   R   (    R   R   7   s    s   (?P<a>x)s
   \g<a>\g<a>t   xxxxs
   \g<a>\g<1>s
   (?P<unk>x)s   \g<unk>\g<unk>s
   \g<1>\g<1>t   as"   \t\n\v\r\f\a\b\B\Z\a\A\w\W\s\S\d\Ds   	
\B\Z\A\w\W\s\S\d\Ds   	
i	   i
   i   i   i   i   s   ^\s*t   Xt   testt   Xtest(   R	   R
   R   t   subR   R   t   escapet   chr(   R	   R   (    (   R   R   t   test_basic_re_sub*   s*    "(%?c         C   s#   |  i t i d d d ƒ d ƒ d  S(   Ns
   (?P<unk>x)s   \g<1>\g<1>\bR   s   xxxx(   R	   R
   R   R%   (   R	   (    (    R   t   test_bug_449964F   s    c         C   s€   |  i t i d d d ƒ d ƒ |  i t i d d d ƒ d ƒ |  i t i d d d ƒ d ƒ |  i t i d d d ƒ d ƒ d  S(   Ns   \r\ns   \ns
   abc
def
s   abc
def
s   
s   
(   R	   R
   R   R%   (   R	   (    (    R   t   test_bug_449000K   s    c         C   sÝ  |  i t i d d d ƒ d ƒ |  i t i d d d ƒ d ƒ |  i t i d d d ƒ d ƒ |  i t i d d d ƒ d d ƒ |  i t i d d	 d ƒ d d
 ƒ |  i t i d d d ƒ d ƒ |  i t i d d d ƒ d ƒ |  i t i d d d ƒ d ƒ |  i t i d d d ƒ d d ƒ |  i t i d d d ƒ d ƒ |  i t i d d d ƒ d ƒ |  i t i d d d ƒ d d ƒ |  i t i d d d ƒ d d
 ƒ |  i t i d d d ƒ d d ƒ |  i t i d d d ƒ d ƒ |  i t i d d d ƒ d ƒ |  i t i t i d d d ƒ |  i t i t i d d d ƒ |  i t i t i d d d ƒ |  i t i t i d d d ƒ |  i t i t i d d  d ƒ |  i t i t i d d! d ƒ |  i t i t i d d" d ƒ |  i t i t i d d# d ƒ |  i t i t i d d$ d ƒ |  i t i t i d d% d ƒ |  i t i t i d d& d ƒ |  i t i t i d d' d ƒ |  i t i d( d d ƒ d ƒ |  i t i d) d$ d* ƒ d+ ƒ |  i t i d) d% d* ƒ d, ƒ d  S(-   NR   s   \0t    s   \000s   \001s   s   \008t   8s   \009t   9s   \111t   Is   \117t   Os   \1111t   I1t   1s   \00s   \07s   s   \08s   \09s   \0aR!   s   \400s   \777s   ÿs   \1s   \8s   \9s   \11s   \18s   \1as   \90s   \99s   \118s   \11as   \181s   \800s   (((((((((((x)))))))))))s   ((((((((((y))))))))))(.)t   xyzt   xz8t   xza(   R	   R
   R   R%   t   assertRaisest   error(   R	   (    (    R   t    test_sub_template_numeric_escapeV   sB    ######c         C   sE   |  i t i d d d ƒ d ƒ |  i t i d d d d ƒ d ƒ d  S(   NR!   t   bt   aaaaat   bbbbbi   t   baaaa(   R	   R
   R   R%   (   R	   (    (    R   t   test_qualified_re_sub€   s    c         C   s#   |  i t i d d d ƒ d ƒ d  S(   Ns   (\S)\s+(\S)s   \1 \2s   hello  theres   hello there(   R	   R
   R   R%   (   R	   (    (    R   t   test_bug_114660„   s    c         C   sB   |  i t i d d d ƒ d ƒ |  i t i d d d ƒ d ƒ d  S(   Ns   x*t   -t   abxds   -a-b-d-s   x+s   ab-d(   R	   R
   R   R%   (   R	   (    (    R   t   test_bug_462270ˆ   s    c         C   s  |  i t i t i d d d ƒ |  i t i t i d d d ƒ |  i t i t i d d d ƒ |  i t i t i d d d ƒ |  i t i t i d d d ƒ |  i t t i d d d ƒ |  i t i t i d	 d
 d ƒ |  i t i t i d	 d d ƒ |  i t i t i d d d ƒ d  S(   Ns   (?P<a>x)s   \g<aR   s   \g<s   \gs   \g<a a>s   \g<1a1>s   \g<ab>s   (?P<a>x)|(?P<b>y)s   \g<b>s   \2s   \g<-1>(   R	   R5   R   R6   R%   t
   IndexError(   R	   (    (    R   t   test_symbolic_refs   s    c         C   s¢   |  i t i d d d ƒ d ƒ |  i t i d d d ƒ d ƒ |  i t i d d d	 ƒ d ƒ |  i t i d d d	 ƒ d ƒ |  i t i d d d	 d ƒ d ƒ d  S(   Ns   (?i)b+R   s	   bbbb BBBBs   x xi   s   b+s   x BBBBi   R2   i    s   b*t   xxxyxzxi   t   xxxyz(   s   x xi   (   s   x BBBBi   (   s   xyzi    (   RC   i   (   RD   i   (   R	   R
   R   t   subn(   R	   (    (    R   t   test_re_subn˜   s
    c         C   sz  |  i t i d d ƒ d d d d d g ƒ |  i t i d d ƒ d d d d g ƒ |  i t i d d ƒ d d d d d d	 d g ƒ |  i t i d
 d ƒ d d d d g ƒ |  i t i d d ƒ d d d d d d d g ƒ |  i t i d d ƒ d d d d d g ƒ |  i t i d d ƒ d d  d d d  d d d d  d d  d	 d g ƒ |  i t i d d ƒ d d d d d g ƒ d  S(   Nt   :s   :a:b::ct    R!   R8   t   cs   :*s   (:*)s   ::s   (?::*)s   (:)*s   ([b:]+)s   :b::s   (b)|(:+)s   (?:b)|(?::+)(   R	   R
   R   t   splitR   (   R	   (    (    R   t   test_re_splitŸ   s    +((.c         C   s°   |  i t i d d d ƒ d d d g ƒ |  i t i d d d ƒ d d d	 g ƒ |  i t i d
 d d ƒ d d d d d g ƒ |  i t i d d d ƒ d d d d d g ƒ d  S(   NRG   s   :a:b::ci   RH   R!   s   b::cs   a:b:c:dR8   s   c:ds   (:)s   (:*)(   R	   R
   R   RJ   (   R	   (    (    R   t   test_qualified_re_split¯   s    ((c         C   s   |  i t i d d ƒ g  ƒ |  i t i d d ƒ d d d g ƒ |  i t i d d ƒ d d d g ƒ |  i t i d d ƒ d
 d d g ƒ d  S(   Ns   :+t   abcs
   a:b::c:::dRG   s   ::s   :::s   (:+)s   (:)(:*)RH   (   RG   RH   (   RG   RG   (   RG   s   ::(   R	   R
   R   R   (   R	   (    (    R   t   test_re_findall·   s    %%c         C   s)   |  i t i d d ƒ d d d g ƒ d  S(	   Ns   (a|(b))t   abaR!   RH   R8   (   R!   RH   (   R8   R8   (   R!   RH   (   R	   R
   R   R   (   R	   (    (    R   t   test_bug_117612¿   s    c         C   sg  |  i t i d d ƒ i ƒ  f  ƒ |  i t i d d ƒ i ƒ  d ƒ |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ i d d ƒ d ƒ t i d ƒ } |  i | i d ƒ i ƒ  d ƒ |  i | i d ƒ i ƒ  d ƒ |  i | i d ƒ i ƒ  d ƒ |  i | i d	 ƒ i ƒ  d ƒ |  i | i d	 ƒ i d
 ƒ d ƒ t i d d ƒ } |  i | i d ƒ d ƒ |  i | i d ƒ d ƒ |  i | i d ƒ d ƒ |  i | i d d ƒ d ƒ t i d ƒ } |  i | i d ƒ i d d d ƒ d ƒ |  i | i d ƒ i d d d ƒ d ƒ |  i | i d ƒ i d d d ƒ d ƒ d  S(   NR!   s   (a)i    i   s   ((a)|(b))(c)?R8   t   acRI   t   bcRH   s!   (?:(?P<a1>a)|(?P<b2>b))(?P<c3>c)?i   i   t   a1t   b2t   c3(   R!   (   R!   R!   (   R!   R!   NN(   R8   NR8   N(   R!   R!   NRI   (   R8   NR8   RI   (   R8   RH   R8   RI   (   R!   R!   (   R!   NN(   NR8   N(   R!   NRI   (
   R	   R
   R   R   t   groupsR   R   t   patR   R   (   R	   RW   R   (    (    R   t   test_re_matchÃ   s*    ""%%("(!c         C   s‡  |  i t i d d ƒ i ƒ  d ƒ |  i t i d d ƒ i ƒ  d ƒ |  i t i d d ƒ d  ƒ |  i t i d d ƒ d  ƒ |  i t i d d ƒ i ƒ  d ƒ |  i t i d d
 ƒ i ƒ  d ƒ |  i t i d d
 ƒ i ƒ  d ƒ |  i t i d d ƒ i ƒ  d ƒ t i d ƒ } |  i | i d ƒ i ƒ  d ƒ |  i | i d ƒ i ƒ  d ƒ |  i | i d ƒ d  ƒ |  i | i d ƒ d  ƒ d  S(   Ns   ^(\()?([^()]+)(?(1)\))$s   (a)t   (R!   s   a)s   (as   ^(?:(a)|c)((?(1)b|d))$t   abR8   t   cdt   ds   ^(?:(a)|c)((?(1)|d))$RH   s   (?P<g1>a)(?P<g2>b)?((?(g2)c|d))RM   RI   t   adt   abdRQ   (   RY   R!   (   NR!   (   R!   R8   (   NR\   (   NR\   (   R!   RH   (   R!   R8   RI   (   R!   NR\   (   R	   R
   R   R   RV   R   R   t   p(   R	   R_   (    (    R   t   test_re_groupref_existsÞ   s*    c         C   sÄ   |  i t i d d ƒ i ƒ  d ƒ |  i t i d d ƒ i ƒ  d ƒ |  i t i d d ƒ d  ƒ |  i t i d d ƒ d  ƒ |  i t i d d	 ƒ i ƒ  d ƒ |  i t i d
 d ƒ i ƒ  d ƒ d  S(   Ns   ^(\|)?([^()]+)\1$s   |a|t   |R!   s   ^(\|)?([^()]+)\1?$s   a|s   |as   ^(?:(a)|c)(\1)$t   aas   ^(?:(a)|c)(\1)?$RI   (   Ra   R!   (   NR!   (   R!   R!   (   NN(   R	   R
   R   R   RV   R   (   R	   (    (    R   t   test_re_grouprefø   s    c         C   s8   |  i t i d d ƒ i ƒ  h  d d <d d <ƒ d  S(   Ns#   (?P<first>first) (?P<second>second)s   first secondt   firstt   second(   R	   R
   R   R   t	   groupdict(   R	   (    (    R   t   test_groupdict  s    c         C   s)   |  i t i d d ƒ i d ƒ d ƒ d  S(   Ns#   (?P<first>first) (?P<second>second)s   first seconds   \2 \1 \g<second> \g<first>s   second first second first(   R	   R
   R   R   t   expand(   R	   (    (    R   t   test_expand	  s    c         C   s$  |  i t i d d ƒ d  ƒ |  i t i d d ƒ d  ƒ |  i t i d d ƒ d  ƒ |  i t i d d ƒ d  ƒ |  i t i d d ƒ i d ƒ d ƒ |  i t i d	 d ƒ i d ƒ d ƒ |  i t i d
 d ƒ i d ƒ d ƒ |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ d  ƒ |  i t i d d ƒ d  ƒ |  i t i d d ƒ d  ƒ |  i t i d d ƒ d  ƒ |  i t i d d ƒ d  ƒ |  i t i d d ƒ d  ƒ |  i t i d d ƒ d  ƒ |  i t i d d ƒ d  ƒ |  i t i d d ƒ d  ƒ |  i t i d d ƒ d  ƒ |  i t i d d ƒ d  ƒ |  i t i d d ƒ d  ƒ |  i t i d d ƒ d  ƒ |  i t i d d ƒ d  ƒ d  S(   Ns	   ^(\w){1}$RM   s
   ^(\w){1}?$s   ^(\w){1,2}$s   ^(\w){1,2}?$s	   ^(\w){3}$i   RI   s   ^(\w){1,3}$s   ^(\w){1,4}$s   ^(\w){3,4}?$s
   ^(\w){3}?$s   ^(\w){1,3}?$s   ^(\w){1,4}?$s   ^x{1}$R   s   ^x{1}?$s   ^x{1,2}$s	   ^x{1,2}?$s   ^x{3}$s   ^x{1,3}$s   ^x{1,4}$s	   ^x{3,4}?$s   ^x{3}?$s	   ^x{1,3}?$s	   ^x{1,4}?$s   ^x{}$s   x{}(   R	   R
   R   R   R   R   t   assertNotEqual(   R	   (    (    R   t   test_repeat_minmax  s4    %%%%%%%%c         C   s¥   |  i t i d d ƒ i d ƒ |  i t i d d ƒ i d ƒ |  i t i d d ƒ i d ƒ |  i t i d d ƒ i d d f ƒ |  i t i d d ƒ i d  ƒ d  S(   Ns   (a)R!   i    i   (   i    i   (   i    i   (
   R	   R
   R   R   t   post   endpost   stringt   regsRj   R   (   R	   (    (    R   t   test_getattr/  s
    %c         C   s¯  |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ i d ƒ d ƒ |  i t i d d t i ƒ i d ƒ d ƒ |  i t i d d t i ƒ i d ƒ d ƒ |  i t i d d t i ƒ i d ƒ d ƒ |  i t i d d t i ƒ i d ƒ d ƒ |  i t i d d t i ƒ i d	 ƒ d
 ƒ |  i t i d d
 t i ƒ i d	 ƒ d
 ƒ |  i t i d d t i ƒ d  ƒ |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ i d ƒ d ƒ |  i t i d d t i ƒ i d	 ƒ d
 ƒ |  i t i d d t i ƒ i d	 ƒ d
 ƒ |  i t i d d t i ƒ d  ƒ |  i t i d d ƒ i d	 ƒ d ƒ |  i t i d d t i ƒ i d	 ƒ d ƒ |  i t i d d t i ƒ i d	 ƒ d ƒ d  S(   Ns   \b(b.)\bs   abcd abc bcd bxi   t   bxs   \B(b.)\Bs   abc bcd bc abxds   ^abc$s   
abc
i    RM   s	   ^\Aabc\Z$u   abcd abc bcd bxu   abc bcd bc abxdu   
abc
u   abcs   \d\D\w\W\s\Ss   1aa! a(	   R	   R
   R   R   R   t   LOCALEt   UNICODEt   MR   (   R	   (    (    R   t   test_special_escapes6  sN          ++"  ++"   c         C   sZ   |  i t i d d t i ƒ i d ƒ d ƒ |  i t i d d t i ƒ i d ƒ d ƒ d  S(   NRM   t   ABCi    u   ABC(   R	   R
   R   R   R.   R   (   R	   (    (    R   t   test_ignore_caseT  s    +c         C   sT   |  i t i d d ƒ i d ƒ d ƒ |  i t i d d t i ƒ i d ƒ d ƒ d  S(   Nu
   ([âˆ¢âˆ£])u   âˆ¢i   (   R	   R
   R   R   R   Rs   (   R	   (    (    R   t   test_bigcharsetX  s      c         C   sZ   |  i t i d d t i ƒ i d ƒ d ƒ |  i t i d d t i ƒ i d ƒ d ƒ d  S(   Ns   a.bs   a
bi    s   a.*bs   a

b(   R	   R
   R   R   t   DOTALLR   (   R	   (    (    R   t   test_anyall^  s    $$c         C   s›  |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ i d ƒ d ƒ |  i t i d	 d
 ƒ i d ƒ d ƒ |  i t i d d ƒ i d ƒ d ƒ |  i t i d d
 ƒ i d ƒ d ƒ |  i t i d d
 ƒ i d ƒ d ƒ |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ i d ƒ d ƒ d  S(   Ns   (a(?=\s[^a]))s   a bi   R!   s   (a(?=\s[^a]*))s   (a(?=\s[abc]))s   (a(?=\s[abc]*))s   a bcs   (a)(?=\s\1)s   a as   (a)(?=\s\1*)s   a aas   (a)(?=\s(abc|a))s   (a(?!\s[^a]))s   (a(?!\s[abc]))s   a ds   (a)(?!\s\1)s   (a)(?!\s(abc|a))(   R	   R
   R   R   R   (   R	   (    (    R   t   test_non_consumingd  s    %%%%%%%%%%c         C   s\  |  i t i d d t i ƒ i d ƒ d ƒ |  i t i d d t i ƒ i d ƒ d ƒ |  i t i d d t i ƒ i d ƒ d ƒ |  i t i d d t i ƒ i d ƒ d ƒ |  i t i d d	 t i ƒ i d ƒ d	 ƒ |  i t i d
 d t i ƒ i d ƒ d ƒ |  i t i d d	 t i ƒ i d ƒ d	 ƒ |  i t i d d t i ƒ i d ƒ d ƒ d  S(   Ns	   (a\s[^a])s   a bi   s
   (a\s[^a]*)s   a bbs
   (a\s[abc])s   (a\s[abc]*)s	   ((a)\s\2)s   a as
   ((a)\s\2*)s   a aas   ((a)\s(abc|a))s   ((a)\s(abc|a)*)(   R	   R
   R   R   R.   R   (   R	   (    (    R   Rw   r  s    +++++++c         C   s)   |  i t i d d ƒ i d ƒ d ƒ d  S(   Ns   (\s)t    i   (   R	   R
   R   R   R   (   R	   (    (    R   t   test_category|  s    c         C   sá   d  k  } |  i | i t d ƒ d ƒ t d ƒ ƒ |  i | i t d ƒ t i ƒ t d ƒ ƒ |  i | i t d ƒ t i ƒ t d ƒ ƒ |  i t i d d t i	 ƒ i
 d ƒ d ƒ |  i t i d d t i	 ƒ i
 d ƒ d ƒ d  S(   Nt   Ai    R!   RM   Rv   u   ABC(   t   _sreR	   R
   t   getlowert   ordR   Rr   Rs   R   R.   R   (   R	   R   (    (    R   t   test_getlower  s    	(+++c         C   sN   |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ i d ƒ d ƒ d  S(   Ns   \s([^a])s    bi   R8   s	   \s([^a]*)s    bbt   bb(   R	   R
   R   R   R   (   R	   (    (    R   t   test_not_literalˆ  s    %c         C   sN   |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ i d ƒ d ƒ d  S(   Ns   \s(b)s    bi   R8   s   a\ss   a i    (   R	   R
   R   R   R   (   R	   (    (    R   t   test_search_coverageŒ  s    %c         C   sø   d } x• t d d ƒ D]„ } | t | ƒ } |  i t i t i t | ƒ ƒ t | ƒ ƒ d  j	 t
 ƒ |  i t i t i t | ƒ ƒ t | ƒ ƒ i ƒ  d ƒ q Wt i t i | ƒ ƒ } |  i | i | ƒ d  j	 t
 ƒ |  i | i | ƒ i ƒ  d ƒ d  S(   NRH   i    i   i   (   i    i   (   i    i   (   R_   t   ranget   iR'   R	   R
   R   R   R&   R   t   TrueR   R   RW   (   R	   RW   R‡   R_   (    (    R   t   test_re_escape  s     0;c         C   s0   d  k  } |  i | ƒ d  k } |  i | ƒ d  S(   N(   t   pickleR	   t   pickle_testt   cPickle(   R	   RŠ   RŒ   (    (    R   t   test_picklingœ  s    		c         C   sA   t  i d ƒ } | i | ƒ } | i | ƒ } |  i	 | | ƒ d  S(   Ns   a(?:b|(c|e){1,2}?|d)+?(.)(
   R   R   t   oldpatRŠ   t   dumpsR   t   loadst   newpatR	   R
   (   R	   RŠ   R‘   R   RŽ   (    (    R   R‹   ¢  s    c         C   sr   |  i t i t i ƒ |  i t i t i ƒ |  i t i t i ƒ |  i t i	 t i
 ƒ |  i t i t i ƒ d  S(   N(   R	   R
   R   R.   t
   IGNORECASEt   LRr   Rt   t	   MULTILINEt   SRy   R"   t   VERBOSE(   R	   (    (    R   t   test_constants¨  s
    c         C   sO   xH t  i t  i t  i t  i t  i g D]" } |  i t  i	 d | ƒ d  ƒ q% Wd  S(   Ns	   ^pattern$(   R   R.   Rt   R"   R•   R“   t   flagR	   Rj   R   R   (   R	   R˜   (    (    R   t
   test_flags¯  s    % c         C   s=  xd d d d d d d d g D]ú } |  i t i d	 | t | ƒ ƒ d  ƒ |  i t i d
 | t | ƒ d ƒ d  ƒ |  i t i d | t | ƒ d ƒ d  ƒ |  i t i d | t | ƒ ƒ d  ƒ |  i t i d | t | ƒ d ƒ d  ƒ |  i t i d | t | ƒ d ƒ d  ƒ q W|  i t i t i d d ƒ d  S(   Ni    i   i   i    i@   i   i€   iÿ   s   \%03os   \%03o0t   0s   \%03o8R,   s   \x%02xs   \x%02x0s   \x%02xzt   zs   \911RH   (	   R‡   R	   Rj   R   R   R'   R   R5   R6   (   R	   R‡   (    (    R   t   test_sre_character_literals³  s     &**&*.c         C   s-  x
d d d d d d d d g D]ê } |  i t i d	 | t | ƒ ƒ d  ƒ |  i t i d
 | t | ƒ ƒ d  ƒ |  i t i d | t | ƒ ƒ d  ƒ |  i t i d | t | ƒ ƒ d  ƒ |  i t i d | t | ƒ ƒ d  ƒ |  i t i d | t | ƒ ƒ d  ƒ q W|  i t i t i d d ƒ d  S(   Ni    i   i   i    i@   i   i€   iÿ   s   [\%03o]s   [\%03o0]s   [\%03o8]s   [\x%02x]s	   [\x%02x0]s	   [\x%02xz]s   [\911]RH   (	   R‡   R	   Rj   R   R   R'   R   R5   R6   (   R	   R‡   (    (    R   t!   test_sre_character_class_literals½  s     &&&&&*c         C   ss   |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ i d ƒ d ƒ |  i t i d d ƒ i d ƒ d ƒ d  S(   Ns   (a)|(b)R8   i   iÿÿÿÿ(   iÿÿÿÿiÿÿÿÿ(   R	   R
   R   R   t   startt   endR   (   R	   (    (    R   t   test_bug_113254Ç  s    %%c         C   sŸ   |  i t i d d ƒ i d  ƒ |  i t i d d ƒ i d ƒ |  i t i d d ƒ i d ƒ |  i t i d d ƒ i d ƒ |  i t i d d ƒ i d ƒ d  S(	   Ns   (a)?aR!   s   (a)(b)?bRZ   i   s   (?P<a>a)(?P<b>b)?bs   (?P<a>a(b))s   ((a))(   R	   R
   R   R   t	   lastindexR   t	   lastgroup(   R	   (    (    R   t   test_bug_527371Ì  s
    c         C   s   |  i t i t i d ƒ d  S(   Ns   foo[a-(   R	   R5   R   R6   R   (   R	   (    (    R   t   test_bug_545855Ô  s    c         C   sÄ   |  i t i d d d d ƒ i d ƒ d ƒ |  i t i d d d d	 d d d
 ƒ i d ƒ d ƒ |  i t i d d d d ƒ i d ƒ d ƒ |  i t i d d d d ƒ i d ƒ d ƒ d  S(   Ns   .*?ci'  RZ   R[   i    i!N  s   .*?cdiˆ  RI   t   cdei#N  i N  RM   t   deiaê  s   (a|b)*?c(   R	   R
   R   R   RŸ   R   (   R	   (    (    R   t   test_bug_418626Ù  s
    -2-c         C   s;   d t  i d ƒ d } |  i t  i | ƒ o d d ƒ d  S(   Nu   [u   â€¹u   ]i   (   R   R&   RW   R	   R
   R   (   R	   RW   (    (    R   t   test_bug_612074å  s    c         C   s‡   |  i t i d d d ƒ i d ƒ d ƒ |  i t i d d d d ƒ i d ƒ d ƒ |  i t i d d d d ƒ i d ƒ d ƒ d  S(   Ns   (x)*iPÃ  R   i   s   (x)*yR   s   (x)*?y(   R	   R
   R   R   R   (   R	   (    (    R   t   test_stack_overflowé  s    )-c         C   s´   d „  } d „  } d „  } d „  } t d | f d | f d | f d | f d g ƒ } |  i | i i d
 ƒ i	 d  ƒ |  i
 | i d ƒ d d d d d d d d d g	 d
 f ƒ d  S(   Nc         C   s   | S(   N(   t   token(   t   scannerRª   (    (    R   t   s_identñ  s    c         C   s   d | S(   Ns   op%s(   Rª   (   R«   Rª   (    (    R   t
   s_operatorò  s    c         C   s
   t  | ƒ S(   N(   t   floatRª   (   R«   Rª   (    (    R   t   s_floató  s    c         C   s
   t  | ƒ S(   N(   R   Rª   (   R«   Rª   (    (    R   t   s_intô  s    s   [a-zA-Z_]\w*s   \d+\.\d*s   \d+s   =|\+|-|\*|/s   \s+RH   s   sum = 3*foo + 312.50 + bart   sums   op=i   s   op*t   foos   op+f312.5t   bar(   s   \s+N(   R¬   R­   R¯   R°   t   ScannerR   R«   R	   Rj   t   patternR
   t   scan(   R	   R«   R¯   R°   R¬   R­   (    (    R   t   test_scannerð  s    				3c         C   sa   xZ d	 D]R } |  i t i d | d ƒ i ƒ  d
 ƒ |  i t i d | d ƒ i ƒ  d ƒ q Wd  S(   NRH   t   ?t   *s
   ((.%s):)?zR›   s   a:zs   a:R!   (   RH   R¸   R¹   (   NN(   s   a:R!   (   t   opR	   R
   R   R   RV   R   (   R	   Rº   (    (    R   t   test_bug_448951  s     c         C   s  |  i t i d d ƒ i ƒ  d ƒ |  i t i d d ƒ i ƒ  d ƒ |  i t i d d ƒ i ƒ  d ƒ |  i t i d d ƒ i ƒ  d ƒ |  i t i d	 d ƒ i ƒ  d ƒ |  i t i d
 d ƒ i ƒ  d ƒ |  i t i d d ƒ i ƒ  d ƒ |  i t i d d ƒ i ƒ  d ƒ d  S(   Ns	   ^((a)|b)*RM   R8   R!   s   ^(([ab])|c)*RI   s   ^((d)|[ab])*s   ^((a)c|[ab])*s   ^((a)|b)*?cs   ^(([ab])|c)*?dt   abcds   ^((d)|[ab])*?cs   ^((a)c|[ab])*?c(   R8   R!   (   RI   R8   (   R8   N(   R8   N(   R8   R!   (   RI   R8   (   R8   N(   R8   N(   R	   R
   R   R   RV   R   (   R	   (    (    R   t   test_bug_725106  s     c         C   sH   |  i t i d d ƒ i ƒ  d ƒ |  i t i d d ƒ i ƒ  d ƒ d  S(   Ns   (a)(?:(?=(b)*)c)*t   abbR!   s   (a)((?!(b)*))*(   R!   N(   R!   NN(   R	   R
   R   R   RV   R   (   R	   (    (    R   t   test_bug_725149   s    c         C   sj   y t  Wn t j
 o d  Sn Xd t  f d „  ƒ  Y} t i | d ƒ ƒ } |  i | i d ƒ d  ƒ d  S(   Nt
   my_unicodec           B   s   t  Z RS(   N(   t   __name__t
   __module__(    (    (    R   RÀ   -  s    RM   R2   (
   t   unicodet	   NameErrorRÀ   R   R   RW   R	   R
   R   R   (   R	   RW   RÀ   (    (    R   t   test_bug_764548'  s    	c         C   sS   t  i d d ƒ } |  i g  } | D] } | | i d ƒ q# ~ d d d g ƒ d  S(   Ns   :+s
   a:b::c:::di    RG   s   ::s   :::(   R   t   finditert   iterR	   R
   t   _[1]t   itemR   (   R	   RÈ   RÇ   RÉ   (    (    R   t   test_finditer1  s    -c         C   sQ   y t  Wn t j
 o d  Sn X|  i t i d ƒ t i t d ƒ ƒ j	 ƒ d  S(   Nt
   bug_926075s   u'bug_926075'(   RÃ   RÄ   R	   t   assert_R   R   t   eval(   R	   (    (    R   t   test_bug_9260756  s
    	c         C   sY   y t  Wn t j
 o n Xt d ƒ } |  i t i | ƒ i d ƒ d d d g ƒ d  S(   Ns   u"[\u002E\u3002\uFF0E\uFF61]"s   a.b.cR!   R8   RI   (	   RÃ   RÄ   RÍ   Rµ   R	   R
   R   R   RJ   (   R	   Rµ   (    (    R   t   test_bug_931848>  s    c         C   s   t  i d d ƒ } |  i | i ƒ  i ƒ  d ƒ |  i t | i ƒ t  i	 d ƒ i
 d ƒ } |  i | i ƒ  i ƒ  d ƒ |  i | i ƒ  d  ƒ d  S(   Ns   \ss   a bi   i   (   i   i   (   i   i   (   R   RÆ   RÇ   R	   R
   t   nextR   R5   t   StopIterationR   R«   R   R   (   R	   R«   RÇ   (    (    R   t   test_bug_581080G  s    c         C   sa   t  i d d ƒ } |  i | i ƒ  i ƒ  d ƒ |  i | i ƒ  i ƒ  d ƒ |  i t | i ƒ d  S(   Ns   .*t   asdfi    i   (   i    i   (   i   i   (	   R   RÆ   RÇ   R	   R
   RÐ   R   R5   RÑ   (   R	   RÇ   (    (    R   t   test_bug_817234P  s    (9   RÁ   RÂ   R   R   R   R(   R)   R*   R7   R<   R=   R@   RB   RF   RK   RL   RN   RP   RX   R`   Rc   Rg   Ri   Rk   Rp   Ru   Rw   Rx   Rz   R{   R}   R‚   R„   R…   R‰   R   R‹   R—   R™   Rœ   R   R    R£   R¤   R§   R¨   R©   R·   R»   R½   R¿   RÅ   RÊ   RÎ   RÏ   RÒ   RÔ   (    (    (    R   R      sp   							*															 							
											
	
												
						c          C   sN  d k  l } l } l } l }	 l } t o	 d GHn x| D]
} t i	 i
 ƒ  d  } } } } } t | ƒ d j o | \ } } } } } n6 t | ƒ d j o | \ } } } n t d | f ‚ y t i | ƒ } Wnu t i j
 o! | | j o qFd G| GHq< t j
 o t ‚ q< d G| GHt o t i d t i	 ƒ qFq< Xy | i | ƒ }  Wn+ t i j
 o } d	 G| Gt | ƒ GHn X| | j o q< | |	 j o |  d  j o qFd
 G| GHq< | | j ok|  d  j	 ok|  i d ƒ \ } } h  d |  i! d ƒ <d |  i! ƒ  <d |  i i" <}
 xk t$ d d ƒ D]Z } y* |  i! | ƒ } | d  j o
 d } n Wn t' j
 o d } n X| |
 d | <qCWxj |  i i( i) ƒ  D]V } y* |  i! | ƒ } | d  j o
 d } n Wn t' j
 o d } n X| |
 | <q´Wt* | |
 ƒ } | | j o% d G| Gt | ƒ d t | ƒ GHq\n
 d G| GHy6 | i t+ | d ƒ ƒ }  |  d  j o d G| GHn Wn+ t, j
 o
 q< n t- j
 o
 q< n Xt i t+ | d ƒ ƒ } | i | ƒ }  |  d  j o d G| GHn | d  d j ov | d d j oe |  d  j	 oX t i | ƒ } | i | |  i d ƒ |  i  d ƒ d ƒ }  |  d  j o d G| GHqˆn t i | t i. ƒ } | i | ƒ }  |  d  j o d G| GHn t i | t i/ ƒ } | i | ƒ }  |  d  j o d G| GHn t i | t i0 ƒ } | i | ƒ }  |  d  j o d  G| GHqFq< q< Wd  S(!   N(   s
   benchmarkss   testss   SUCCEEDs   FAILs   SYNTAX_ERRORs   Running re_tests test suitei   i   s%   Test tuples should have 3 or 5 fieldss   === Syntax error:s   *** Unexpected error ***t   files   === Unexpected exceptions   === Succeeded incorrectlyi    t   foundRV   t   flagsi   id   R   t   Errors   g%ds   === grouping errors    should be s   === Failed incorrectlys   latin-1s   === Fails on unicode matchs"   === Fails on unicode pattern matchi   s   \Biþÿÿÿs!   === Failed on range-limited matchs#   === Fails on case-insensitive matchs#   === Fails on locale-sensitive matchs$   === Fails on unicode-sensitive match(1   t   test.re_testst
   benchmarkst   testst   SUCCEEDt   FAILt   SYNTAX_ERRORt   verboset   tt   syst   stdoutt   flushR   Rµ   R   t   outcomet   replt   expectedt   lent
   ValueErrorR   R   t   objR6   t   KeyboardInterruptt	   tracebackt	   print_excR   t   resultt   msgt   reprR   Rž   RŸ   R   R×   t   vardictR†   R‡   t   giRA   t
   groupindext   keysRÍ   RÃ   RÄ   t	   TypeErrorR’   Rr   Rs   (   Rí   Rñ   RŸ   Rž   Rµ   Rî   RÛ   Ræ   Rå   RÝ   Rð   RÞ   Ré   R‡   R   RÜ   Rà   RÚ   Rä   (    (    R   t   run_re_testsW  s¶    %	    
	 6  !	/+c           C   s   t  t ƒ t ƒ  d  S(   N(   t   run_unittestR   Rõ   (    (    (    R   t	   test_mainÓ  s    
t   __main__(   Rá   t   patht   test.test_supportRß   Rö   R   t   sreR´   t   osRë   t   weakrefR   t   unittestt   TestCaseR   Rõ   R÷   RÁ   (   R÷   Rß   Rþ   Rë   Rá   R   R   R   Rö   Rõ   Rü   R´   (    (    R   R¸      s   			ÿ ÿ G	|	