Ë
    îÆje  ã                   ój   — d Z ddlZddlmc mZ ddlmZ ddlm	Z	 ddl
mZ dedefd„Z G d	„ d
«      Zy)z-Tests for the regex-based fallback extractor.é    N)Údatetime)Úextract_with_regex)ÚPostÚtextÚreturnc                 ó<   — t        dddd| t        ddd«      d¬«      S )	NÚ1ÚtestÚTestzhttps://fb.com/testié  é   zhttps://fb.com/posts/1)Úpost_idÚgroupÚauthor_nameÚauthor_profile_urlr   Ú	timestampÚpost_url)r   r   )r   s    ú=/var/www/html/agent.samochodowy/tests/test_regex_extractor.pyÚ_postr   	   s-   € ÜØØØØ0ØÜ˜4  AÓ&Ø)ôð ó    c                   ó6   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	y)	ÚTestRegexExtractorc                 ó¼  — t        t        d«      «      }|j                  }d}||k(  }|s­t        j                  d|fd||f«      dt        j                  «       v st        j                  |«      rt        j                  |«      ndt        j                  |«      t        j                  |«      dœz  }dd|iz  }t        t        j                  |«      «      ‚d x}x}}y )	NzSzukam pompy do Volvo FH13ÚVOLVO©ú==©z-%(py2)s
{%(py2)s = %(py0)s.brand
} == %(py5)sÚq©Úpy0Úpy2Úpy5úassert %(py7)sÚpy7©r   r   ÚbrandÚ
@pytest_arÚ_call_reprcompareÚ@py_builtinsÚlocalsÚ_should_repr_global_nameÚ	_safereprÚAssertionErrorÚ_format_explanation©Úselfr   Ú@py_assert1Ú@py_assert4Ú@py_assert3Ú@py_format6Ú@py_format8s          r   Útest_extracts_brandz&TestRegexExtractor.test_extracts_brand   s   € ÜœuÐ%AÓBÓCˆØ�w‰wÐ!˜'Ð!ˆw˜'Ñ!×!×!Õ!ˆw˜'×!×!×!×!×!Ñ!ˆq×!×!Ó!ˆq×!×!Ô!ˆw×!×!Ò!˜'×!×!×!×!×!×!Ô!r   c                 ó¼  — t        t        d«      «      }|j                  }d}||k(  }|s­t        j                  d|fd||f«      dt        j                  «       v st        j                  |«      rt        j                  |«      ndt        j                  |«      t        j                  |«      dœz  }dd|iz  }t        t        j                  |«      «      ‚d x}x}}y )	NzSzukam alternatora do strucliÚOPELr   r   r   r   r"   r#   r$   r.   s          r   Útest_extracts_brand_colloquialz1TestRegexExtractor.test_extracts_brand_colloquial   s   € ÜœuÐ%DÓEÓFˆØ�w‰wÐ ˜&Ð ˆw˜&Ñ × × Õ ˆw˜&× × × × × Ñ ˆq× × Ó ˆq× × Ô ˆw× × Ò ˜&× × × × × × Ô r   c                 ó¼  — t        t        d«      «      }|j                  }d}||k(  }|s­t        j                  d|fd||f«      dt        j                  «       v st        j                  |«      rt        j                  |«      ndt        j                  |«      t        j                  |«      dœz  }dd|iz  }t        t        j                  |«      «      ‚d x}x}}y )	NzSzukam alternatora MAN TGAÚ
alternatorr   ©z0%(py2)s
{%(py2)s = %(py0)s.category
} == %(py5)sr   r   r"   r#   )r   r   Úcategoryr&   r'   r(   r)   r*   r+   r,   r-   r.   s          r   Útest_extracts_categoryz)TestRegexExtractor.test_extracts_category   s   € ÜœuÐ%AÓBÓCˆØ�z‰zÐ)˜\Ð)ˆz˜\Ñ)×)×)Õ)ˆz˜\×)×)×)×)×)Ñ)ˆq×)×)Ó)ˆq×)×)Ô)ˆz×)×)Ò)˜\×)×)×)×)×)×)Ô)r   c                 óH  — t        t        d«      «      }d}|j                  }||v }|s­t        j                  d|fd||f«      t        j
                  |«      dt        j                  «       v st        j                  |«      rt        j
                  |«      ndt        j
                  |«      dœz  }dd|iz  }t        t        j                  |«      «      ‚d x}x}}d	}|j                  }||v }|s­t        j                  d|fd||f«      t        j
                  |«      dt        j                  «       v st        j                  |«      rt        j
                  |«      ndt        j
                  |«      dœz  }dd|iz  }t        t        j                  |«      «      ‚d x}x}}y )
Nz"Szukam pompy 20744939 lub 20734268Ú20744939)Úin)z2%(py1)s in %(py5)s
{%(py5)s = %(py3)s.oe_numbers
}r   )Úpy1Úpy3r!   r"   r#   Ú20734268)r   r   Ú
oe_numbersr&   r'   r+   r(   r)   r*   r,   r-   )r/   r   Ú@py_assert0r1   Ú@py_assert2r3   r4   s          r   Útest_extracts_oe_numbersz+TestRegexExtractor.test_extracts_oe_numbers"   sì   € ÜœuÐ%IÓJÓKˆØÐ)˜QŸ\™\Ð)ˆz˜\Ð)×)×)Õ)ˆz˜\×)×)Ó)ˆz×)×)×)×)×)Ð)˜Q×)×)Ó)˜Q×)×)Ô)˜\×)×)×)×)×)×)Ó)ØÐ)˜QŸ\™\Ð)ˆz˜\Ð)×)×)Õ)ˆz˜\×)×)Ó)ˆz×)×)×)×)×)Ð)˜Q×)×)Ó)˜Q×)×)Ô)˜\×)×)×)×)×)×)Ô)r   c                 ó¼  — t        t        d«      «      }|j                  }d}||k(  }|s­t        j                  d|fd||f«      dt        j                  «       v st        j                  |«      rt        j                  |«      ndt        j                  |«      t        j                  |«      dœz  }dd|iz  }t        t        j                  |«      «      ‚d x}x}}y )	NzSzukam alternator C18NZ OpelÚC18NZr   )z3%(py2)s
{%(py2)s = %(py0)s.engine_code
} == %(py5)sr   r   r"   r#   )r   r   Úengine_coder&   r'   r(   r)   r*   r+   r,   r-   r.   s          r   Útest_extracts_engine_codez,TestRegexExtractor.test_extracts_engine_code'   s   € ÜœuÐ%CÓDÓEˆØ�}‰}Ð' Ð'ˆ} Ñ'×'×'Õ'ˆ} ×'×'×'×'×'Ñ'ˆq×'×'Ó'ˆq×'×'Ô'ˆ}×'×'Ò' ×'×'×'×'×'×'Ô'r   c                 óº  — t        t        d«      «      }|j                  }d}||u }|s­t        j                  d|fd||f«      dt        j                  «       v st        j                  |«      rt        j                  |«      ndt        j                  |«      t        j                  |«      dœz  }dd|iz  }t        t        j                  |«      «      ‚d x}x}}y )	Nu   Sprzedam pompÄ™ wody VolvoF©Úis©z7%(py2)s
{%(py2)s = %(py0)s.is_part_request
} is %(py5)sr   r   r"   r#   )r   r   Úis_part_requestr&   r'   r(   r)   r*   r+   r,   r-   r.   s          r   Útest_no_buy_intentz%TestRegexExtractor.test_no_buy_intent+   s„   € ÜœuÐ%AÓBÓCˆØ× Ñ Ð) EÐ)Ð  EÐ)×)×)Õ)Ð  E×)×)×)×)×)Ñ)ˆq×)×)Ó)ˆq×)×)Ô)Ð ×)×)Ò) E×)×)×)×)×)×)Ô)r   c                 óJ  — t        t        d«      «      }|j                  }d}||u }|s­t        j                  d|fd||f«      dt        j                  «       v st        j                  |«      rt        j                  |«      ndt        j                  |«      t        j                  |«      dœz  }dd|iz  }t        t        j                  |«      «      ‚d x}x}}|j                  }d	}||k(  }|s­t        j                  d
|fd||f«      dt        j                  «       v st        j                  |«      rt        j                  |«      ndt        j                  |«      t        j                  |«      dœz  }dd|iz  }t        t        j                  |«      «      ‚d x}x}}y )Nu   KupiÄ™ klocki hamulcowe MAN TGATrM   rO   r   r   r"   r#   zklocki hamulcower   r;   )r   r   rP   r&   r'   r(   r)   r*   r+   r,   r-   r<   r.   s          r   Útest_buy_intentz"TestRegexExtractor.test_buy_intent/   sõ   € ÜœuÐ%FÓGÓHˆØ× Ñ Ð( DÐ(Ð  DÐ(×(×(Õ(Ð  D×(×(×(×(×(Ñ(ˆq×(×(Ó(ˆq×(×(Ô(Ð ×(×(Ò( D×(×(×(×(×(×(Ó(Ø�z‰zÐ/Ð/Ð/ˆzÐ/Ñ/×/×/Õ/ˆzÐ/×/×/×/×/×/Ñ/ˆq×/×/Ó/ˆq×/×/Ô/ˆz×/×/Ò/Ð/×/×/×/×/×/×/Ô/r   N)
Ú__name__Ú
__module__Ú__qualname__r5   r8   r=   rG   rK   rQ   rS   © r   r   r   r      s%   „ ò"ò!ò*ò*ò
(ò*ó0r   r   )Ú__doc__Úbuiltinsr(   Ú_pytest.assertion.rewriteÚ	assertionÚrewriter&   r   Ú,agent_samochodowy.extraction.regex_extractorr   Úagent_samochodowy.modelsr   Ústrr   r   rW   r   r   ú<module>r`      s3   ðÙ 3ç  „ Õ å KÝ )ð	�ð 	˜ó 	÷0ò 0r   