o
    ;Di5$                     @   s   d dl mZmZmZ d dlZd dlmZ d dlmZ d dl	m
Z
mZ d dlmZmZmZmZmZ d dlmZ dd	 Zd
d Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zd d! Z dS )"    )absolute_importprint_functiondivisionN)next)ArgumentError)ieqeq_)capturesplitsearchsearchcomplement	splitdown)TransformErrorc                  C   sz   d} d}t | ddd}t|| t | ddddd}t|| d}t | dddd	d}t|| d
}t | dd}t|| d S )Nidvariablevalue)1A112)2A215)3B118)4C1219)r   r   treattimer   r   Ar   r   r   r$   r   r   r   Br   r   r   Cr   r   z	(\w)(\d+)r!   r"   Finclude_original))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   T)r   r   r#   r%   r&   r(   r	   r   tableexpectationresult r3   W/var/www/Datamplify/venv/lib/python3.10/site-packages/petl/test/transform/test_regex.pytest_capture   s    




r5   c                  C   $   d} d}t | ddd}t|| d S )N)foobar)r8   bazquxr9   (\w)(\d)r;   r<   r.   r0   expectactualr3   r3   r4   test_capture_empty5      rB   c                  C   H   g } t t t| dddD ]}qW d    d S 1 sw   Y  d S )Nr9   r=   r>   )pytestraisesr   r	   r0   ir3   r3   r4   test_capture_headerless<      "rI   c                  C   s  d} d}t | ddd}t|}t|d t| t|d t| t|d t| t|d	 t| zt| W n	 tyB   Y nw J dt | dddddgd}t|}t|d t| t|d t| t|d t| t|d	 t| tdt| d S )Nr   )r    r#   r%   r&   r   z([A-B])(\d+)r*   r            Fzexpected exception )	newfieldsfill)r   r   rN   r   )r	   iterr   r   r   )r0   r1   r2   itr3   r3   r4   test_capture_nonmatchingC   s.   rS   c                  C   s   d} d}t | ddd}t|| t|| t | ddd}t|| t | ddd}t|| d}t | dddd	d
}t|| d}t | dd}t|| d S )N)r   )r   parad1r   )r   parad2r   )r   tempd1r   )r   tempd2r   ))r   r   r   dayr   r   parar   r   r   rZ   r   r   r   tempr   r   r   r]   r   r   d)r   rX   z[Dd]rK   ))r   r   r   r   rX   )r   rT   r   rZ   r   )r   rU   r   rZ   r   )r   rV   r   r]   r   )r   rW   r   r]   r   Tr+   )r-   rY   r[   r\   r^   r
   r   r/   r3   r3   r4   
test_spliti   s"   





ra   c                  C   r6   )Nr7   r:   r9   r_   r>   r`   r?   r3   r3   r4   test_split_empty   rC   rb   c                  C   rD   )Nr9   r_   r>   )rE   rF   r   r
   rG   r3   r3   r4   test_split_headerless   rJ   rc   c                  C   sN   d} t | d}d}t|| t|| t | dd}d}t|| t|| d S )Nr8   r9   r;   orange   zoranges are nice fruitmango*   zI like thembananaJ   z
lovely toocucumber)   zbetter than mango.g.)re   rf   ri   ro   r8   )re   rf   ri   r   r   table1table2expect2table3expect3r3   r3   r4   test_search   s   



rz   c                  C   s,   d} t | dd}d}t|| t|| d S )N)re   aa   g"@aaarL   gV@)brK   gL7@)ccc   g      E@bb   g9Y@)crL   r8   [ab]{2})re   r{   r~   r   rs   r0   rA   r@   r3   r3   r4   test_search_2   s
   
r   c                  C   s,   g } t | dd}g }t|| t|| d S )Nr8   r   rs   r   r3   r3   r4   test_search_headerless   s
   
r   c                  C   s   d} t | d}d}t|| t|| t | dd}d}t|| t|| t| ddd}d}t|| t|| t| dddd}d}t|| t|| d S )Nrd   rr   )re   rl   r8   )re   rl   ro   T)
complement)r   r   r   rt   r3   r3   r4   test_searchcomplement   s"   







r   c                  C   s*   d} t | d}d}t|| t|| d S )N)namer   u   Արամ ԽաչատրյանrK   )u   Johann StraußrL   )u   Вагиф СәмәдоғлуrM   )u	   章子怡r}   u   .Խա.)r   r   rs   tblrA   r@   r3   r3   r4   test_search_unicode  s
   

r   c                  C   s|   d} t | dd}d}t|| t|| t|| t|| t|| t|| t|| t|| t|| t|| d S )N)r   roles)Jane Doez president,engineer,tailor,lawyer)John Doez/rocket scientist,optometrist,chef,knight,sailorr   ,)
r   )r   	president)r   engineer)r   tailor)r   lawyer)r   zrocket scientist)r   optometrist)r   chef)r   knight)r   sailor)r   r   r   r3   r3   r4   test_splitdown  s   








r   )!
__future__r   r   r   rE   petl.compatr   petl.errorsr   petl.test.helpersr   r   petl.transform.regexr	   r
   r   r   r   petl.transform.basicsr   r5   rB   rI   rS   ra   rb   rc   rz   r   r   r   r   r   r3   r3   r3   r4   <module>   s(   (&.'