a
     {a;                     @   sP   d Z ddlZddlZddlZddlmZ ddlmZmZ G dd dej	j
ZdS )zTests for samba.common    N)normalise_int32)SamDBdsdb_Dnc                   @   s$   e Zd Zdd Zdd Zdd ZdS )CommonTestsc                 C   sD   |  dtd |  dtd |  dtd |  dtd d S )NZ17   z-123z-1294967296Z
3000000000)assertEqualr   )self r	   4/usr/lib/python3/dist-packages/samba/tests/common.pytest_normalise_int32   s    z CommonTests.test_normalise_int32c                 C   sV   | j d }tj|d}t|d}t|d}| |jd | d|  t| d S )Nz/test_dsdb_Dn_binary.ldburlzDC=foo,DC=barzSB:8:0000000D:<GUID=b3f0ec29-17f4-452a-b002-963e1909d101>;DC=samba,DC=example,DC=comZ0000000D   )	tempdirsambaLdbr   r   ZbinaryZget_binary_integerosunlink)r   r   samdn1dn2r	   r	   r
   test_dsdb_Dn_binary#   s    


zCommonTests.test_dsdb_Dn_binaryc              	   C   s&  | j d }tj|d}zt|d}t|d}t|d}t|d}t|d}t|d}||||g}	d	d
 t|	D }
| |
d t| | |
d t| | |
d t| | |
d t| ||g}dd
 t|D }| |d t| | |d t| W ~t| n~t| 0 d S )Nz/test_dsdb_Dn_sorted.ldbr   zZB:8:0000000D:<GUID=b3f0ec29-17f4-452a-b002-963e1909d101>;OU=dn1,DC=samba,DC=example,DC=comzZB:8:0000000C:<GUID=b3f0ec29-17f4-452a-b002-963e1909d101>;OU=dn1,DC=samba,DC=example,DC=comzZB:8:0000000F:<GUID=00000000-17f4-452a-b002-963e1909d101>;OU=dn3,DC=samba,DC=example,DC=comzZB:8:00000000:<GUID=ffffffff-17f4-452a-b002-963e1909d101>;OU=dn4,DC=samba,DC=example,DC=comzM<GUID=ffffffff-27f4-452a-b002-963e1909d101>;OU=dn5,DC=samba,DC=example,DC=comzM<GUID=00000000-27f4-452a-b002-963e1909d101>;OU=dn6,DC=samba,DC=example,DC=comc                 S   s   g | ]}t |qS r	   str.0Zdnr	   r	   r
   
<listcomp>7       z3CommonTests.test_dsdb_Dn_sorted.<locals>.<listcomp>r            c                 S   s   g | ]}t |qS r	   r   r   r	   r	   r
   r   =   r   )	r   r   r   r   sortedr   r   r   r   )r   r   r   r   r   Zdn3Zdn4Zdn5Zdn6Zunsorted_links14Zsorted_vals14Zunsorted_links56Zsorted_vals56r	   r	   r
   test_dsdb_Dn_sorted,   s.    






zCommonTests.test_dsdb_Dn_sortedN)__name__
__module____qualname__r   r   r"   r	   r	   r	   r
   r      s   	r   )__doc__r   r   Zsamba.testsZsamba.commonr   Zsamba.samdbr   r   ZtestsZTestCaseInTempDirr   r	   r	   r	   r
   <module>   s   