B
    {[L
  ã               @   s   d dl Z G dd„ de jƒZdS )é    Nc               @   s\   e Z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 )Ú
IndexTestsc             C   s   ddl m} |S )Nr   )ÚIndex)Zpkginfo.indexr   )Úselfr   © r   ú7lib/python3.7/site-packages/pkginfo/tests/test_index.pyÚ_getTargetClass   s    zIndexTests._getTargetClassc             C   s
   |   ¡ ƒ S )N)r   )r   r   r   r   Ú_makeOne	   s    zIndexTests._makeOnec             C   sX   |   ¡ }|  t|ƒd¡ |  t| ¡ ƒd¡ |  t| ¡ ƒd¡ |  t| ¡ ƒd¡ d S )Nr   )r   ÚassertEqualÚlenÚkeysÚvaluesÚitems)r   Úindexr   r   r   Ú
test_empty   s
    zIndexTests.test_emptyc             C   s"   ddl m} G dd„ d|ƒ}|ƒ S )Nr   )ÚDistributionc               @   s   e Zd ZdZdZdS )z0IndexTests._makeDummy.<locals>.DummyDistributionÚdummyz1.0N)Ú__name__Ú
__module__Ú__qualname__ÚnameÚversionr   r   r   r   ÚDummyDistribution   s   r   )Zpkginfo.distributionr   )r   r   r   r   r   r   Ú
_makeDummy   s    zIndexTests._makeDummyc             C   s   |   ¡ }|  t|jd¡ d S )NÚnonesuch)r   ÚassertRaisesÚKeyErrorÚ__getitem__)r   r   r   r   r   Útest___getitem___miss   s    z IndexTests.test___getitem___missc             C   s2   G dd„ dƒ}|ƒ }|   ¡ }|  t|jd|¡ d S )Nc               @   s   e Zd ZdZdZdS )zCIndexTests.test___setitem___value_not_dist.<locals>.NotDistributionr   z1.0N)r   r   r   r   r   r   r   r   r   ÚNotDistribution    s   r   z	dummy-1.0)r   r   Ú
ValueErrorÚ__setitem__)r   r   r   r   r   r   r   Útest___setitem___value_not_dist   s    z*IndexTests.test___setitem___value_not_distc             C   s&   |   ¡ }|  ¡ }|  t|jd|¡ d S )Nr   )r   r   r   r   r    )r   r   r   r   r   r   Útest___setitem___bad_key'   s    z#IndexTests.test___setitem___bad_keyc             C   sÆ   |   ¡ }|  ¡ }||d< |  |d |k¡ |  t|ƒd¡ |  t| ¡ ƒd¡ |  t| ¡ ƒd d¡ |  t| ¡ ƒd¡ |  t| ¡ ƒd |¡ |  t| ¡ ƒd¡ |  t| ¡ ƒd d|f¡ d S )Nz	dummy-1.0é   r   )	r   r   Ú
assertTruer	   r
   r   Úlistr   r   )r   r   r   r   r   r   Útest___setitem___valid_key,   s    z%IndexTests.test___setitem___valid_keyc             C   s0   |   ¡ }G dd„ dƒ}|ƒ }|  t|j|¡ d S )Nc               @   s   e Zd ZdZdZdS )z5IndexTests.test_add_not_dist.<locals>.NotDistributionr   z1.0N)r   r   r   r   r   r   r   r   r   r   ;   s   r   )r   r   r   Úadd)r   r   r   r   r   r   r   Útest_add_not_dist9   s    zIndexTests.test_add_not_distc             C   sÈ   |   ¡ }|  ¡ }| |¡ |  |d |k¡ |  t|ƒd¡ |  t| ¡ ƒd¡ |  t| ¡ ƒd d¡ |  t| ¡ ƒd¡ |  t| ¡ ƒd |¡ |  t| 	¡ ƒd¡ |  t| 	¡ ƒd d|f¡ d S )Nz	dummy-1.0r#   r   )
r   r   r'   r$   r	   r
   r   r%   r   r   )r   r   r   r   r   r   Útest_add_valid_distA   s    
zIndexTests.test_add_valid_distN)r   r   r   r   r   r   r   r   r!   r"   r&   r(   r)   r   r   r   r   r      s   r   )ZunittestZTestCaser   r   r   r   r   Ú<module>   s   