o
    #nf                     @   sL   d dl Zd dlm  mZ d dlZd dlmZ d dl	m
Z
 G dd dZdS )    N)Counter)
word_countc                   @   s4   e Zd Zdd Zdd Zdd Zdd Zd	d
 ZdS )Testword_countc                 C      |d }t |ddd}|d W d    n1 sw   Y  t| | }d}|j}||v }|sgtd|fd||ft|d	t	 v sLt
|rQt|nd	t|d
 }	dd|	i }
tt|
d  } }}d S )Nztest_case_sensitive.txtwutf-8encodingzCase case CASEz	'case': 3inz+%(py1)s in %(py5)s
{%(py5)s = %(py3)s.out
}capturedZpy1py3py5assert %(py7)spy7openwriter   
readouterrout
@pytest_ar_call_reprcompare	_saferepr@py_builtinslocals_should_repr_global_nameAssertionError_format_explanationselfcapfdtmp_path	file_pathfiler   Z@py_assert0@py_assert4@py_assert2@py_format6@py_format8 r*   5/workspaces/Masterarbeit/aufgabe_1/test_word_count.py#test_word_count_case_sensitive_file      z2Testword_count.test_word_count_case_sensitive_filec                 C   r   )Nztest_punctuation.txtr   r   r   z<This sentence has some punctuation, like commas and periods.zh'this': 1
'sentence': 1
'has': 1
'some': 1
'punctuation': 1
'like': 1
'commas': 1
'and': 1
'periods': 1
r
   r   r   r   r   r   r   r    r*   r*   r+    test_word_count_punctuation_file   r-   z/Testword_count.test_word_count_punctuation_filec                 C   r   )Nz!test_same_word_multiple_times.txtr   r   r   zword word word word wordz	'word': 5r
   r   r   r   r   r   r   r    r*   r*   r+   test_word_count_same_word_file   r-   z-Testword_count.test_word_count_same_word_filec                 C   r   )Nz#test_different_words_same_count.txtr   r   r   zapple banana orangez#'apple': 1
'banana': 1
'orange': 1
r
   r   r   r   r   r   r   r    r*   r*   r+   $test_word_count_different_words_file    r-   z3Testword_count.test_word_count_different_words_filec                 C   s   |d }t |ddd  t| | }|j}|j}| }d}||k}	|	sbtd|	fd||fdt	 v s;t
|r@t|ndt|t|t|t|d	 }
d
d|
i }tt|d  } } } }	}d S )Nztest_empty_file.txtr   r   r    )==)z]%(py6)s
{%(py6)s = %(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.out
}.strip
}()
} == %(py9)sr   )py0py2py4py6Zpy9zassert %(py11)sZpy11)r   closer   r   r   stripr   r   r   r   r   r   r   r   )r!   r"   r#   r$   r   @py_assert1@py_assert3Z@py_assert5Z@py_assert8Z@py_assert7Z@py_format10Z@py_format12r*   r*   r+   test_word_count_empty_file(   s
   z)Testword_count.test_word_count_empty_fileN)__name__
__module____qualname__r,   r.   r/   r0   r;   r*   r*   r*   r+   r      s    		r   )builtinsr   _pytest.assertion.rewrite	assertionrewriter   stringcollectionsr   Zaufgabe_1.word_count_1_0Sr   r   r*   r*   r*   r+   <module>   s   " 