HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //lib/python3/dist-packages/samba/tests/kcc/__pycache__/kcc_utils.cpython-310.pyc
o

�/a�6�@s�dZddlZddlZddlmZmZddlmZddlmZddl	m
Z
ddlmZddlm
Z
Gd	d
�d
ejj�ZGdd�dejj�ZdS)
zTests for samba.kcc.kcc_utils�N)�new_connection_schedule�drsblobs)�uncovered_sites_to_cover)�Credentials)�system_session)�SamDB)�delete_forcec@seZdZdd�ZdS)�
ScheduleTestscCs>t�}|�|tj�|�|jd�|�t|jdj�d�dS)N�r�)	r�assertIsInstancer�schedule�assertEqual�size�len�	dataArray�slots)�selfr
�r�;/usr/lib/python3/dist-packages/samba/tests/kcc/kcc_utils.py�test_new_connection_schedule!sz*ScheduleTests.test_new_connection_scheduleN)�__name__�
__module__�__qualname__rrrrrr	sr	c@sreZdZdd�Zdd�Zdd�Zdd�Zgd	fd
d�Zdd
�Zdd�Z	dd�Z
dd�Zdd�Zdd�Z
dd�ZdS)�SiteCoverageTestscCsVd|_tj��|_i|_i|_t�|_|j�	|j�t
�|_t|j|j|jd�|_
dS)N�kcc_)�session_info�credentials�lp)�prefix�samba�tests�env_loadparmr�sites�
site_linksr�creds�guessr�sessionr�samdb)rrrr�setUp.s�zSiteCoverageTests.setUpcCsN|j��|jD]}t|j|dgd�q|jD]}t|j|�q|j��dS)Nz
tree_delete:1)�controls)r(�transaction_startr#rr$�transaction_commit)r�site�	site_linkrrr�tearDown=s


zSiteCoverageTests.tearDowncCs*d�||�}|j�|d|j��d��|S)NzCN={0},CN=Servers,{1}�server)�dn�objectClass�serverReference)�formatr(�add�	domain_dn)r�namer-r1rrr�_add_serverHs�zSiteCoverageTests._add_servercCsRd�||j���}|j�|dd��|j�d|dgd��||j|<||��fS)NzCN={0},CN=Sites,{1}r-)r1r2zCN=Servers,�serversContainer)r4r(�get_config_basednr5r#�lower)rr7r1rrr�	_add_siteQs
���
zSiteCoverageTests._add_site�dcCs:d�||j���}|j�|dt|�|d��||j|<|S)Nz2CN={0},CN=IP,CN=Inter-Site Transports,CN=Sites,{1}�siteLink)r1r2�cost�siteList)r4r(r:r5�strr$)rr7�linksr?r1rrr�_add_site_linkas
��
z SiteCoverageTests._add_site_linkcCs�|j��|�|jd�\}}|�|jd�\}}|�|jd�\}}|�|jdd|�|�|jdd|�|�|jd|||g�|j��t|j|�}|��|�	|g|�t|j|�}|��|�	g|�dS)N�ABCD�BCDE�	uncovered�1�link�
r(r+r<rr8rCr,r�sortr�r�site1�name1�site2�name2�uncovered_dnrF�to_coverrrr�#test_single_site_link_same_dc_countns 
�
z5SiteCoverageTests.test_single_site_link_same_dc_countcCs|j��|�|jd�\}}|�|jd�\}}|�|jd�\}}|�|jdd|�|�|jdd|�|�|jdd|�|�|jdd|�|�|jdd|�|�|jd|||g�|j��t|j|�}|��|�	g|�t|j|�}|��|�	|g|�dS)NrDrErFrG�2�3rHrIrKrrr�(test_single_site_link_different_dc_count�s&
�
z:SiteCoverageTests.test_single_site_link_different_dc_countcCs2|j��|�|jd�\}}|�|jd�\}}|�|jd�\}}|�|jdd|�|�|jdd|�|�|jdd|�|�|jdd|�|�|jdd|�|�|jd||g�|�|jd||g�|j��t|j|�}|��|�	|g|�t|j|�}|��|�	|g|�dS)	NrDrErFrGrSrT�link1�link2rIrKrrr�test_two_site_links_same_cost�s,
��
z/SiteCoverageTests.test_two_site_links_same_costcCs|j��|�|jd�\}}|�|jd�\}}|�|jd�\}}|�|jdd|�|�|jdd|�|�|jdd|�|j|jd||gdd�|j|jd	||gd
d�|j��t|j|�}|��|�	|g|�t|j|�}|��|�	g|�dS)NrDrErFrGrSrV�2�r?rW�KrIrKrrr�#test_two_site_links_different_costs�s,
��
z5SiteCoverageTests.test_two_site_links_different_costsc
Csp|j��|�|jd�\}}|�|jd�\}}|�|jd�\}}|�|jd�\}}|�|jdd|�|�|jdd|�|�|jdd|�|�|jdd|�|j|jd||gdd	�|j|jd
||gdd	�|j|jd||gd
d	�|j��t|j|�}	|	��|�	|g|	�t|j|�}	|	��|�	g|	�t|j|�}	|	��|�	g|	�dS)NrDrE�CDEFrFrGrSrVrYrZrWr[�link3�<rI�
rrLrMrNrO�site3�name3rPrFrQrrr�%test_three_site_links_different_costs�s>
���
z7SiteCoverageTests.test_three_site_links_different_costsc
Csr|j��|�|jd�\}}|�|jd�\}}|�|jd�\}}|�|jd�\}}|�|jdd|�|�|jdd|�|�|jdd|�|�|jdd|�|j|jd||gdd	�|j|jd
||gdd	�|j|jd||gdd	�|j��t|j|�}	|	��|�	|g|	�t|j|�}	|	��|�	g|	�t|j|�}	|	��|�	|g|	�dS)
NrDrEr]rFrGrSrVrYrZrWr[r^rIr`rrr�%test_three_site_links_duplicate_costss>
���
z7SiteCoverageTests.test_three_site_links_duplicate_costscCsl|j��|�|jd�\}}|�|jd�\}}|�|jd�\}}|�|jd�\}}|�|jd�\}	}
|�|jd�\}}|�|jd�\}
}|�|jd�\}}|�|jd	�\}}|�|jdd
|�|�|jdd
|�|�|jdd|�|�|jdd
|�|�|jdd|�|�|jdd|�|�|jdd
|�|�|jdd|�|�|jdd
|	�|�|jdd|	�|�|jdd
|�|j|jd
||||
gdd�|j|jd||	||
gdd�|j|jd||||gdd�|j|jd||	||gdd�|j|jd||||gdd�|j|jd||	||gdd�|j��t|j|�}|��|�	g|�t|j|�}|��|�	g|�t|j|�}|��|�	||g|�t|j|�}|��|�	||g|�t|j|
�}|��|�	g|�t|j|�}|��|�	g|�|||fD]}t|j|�}|��|�	g|��q�dS)NrDrEr]�1234�2345�3456�
uncovered1�
uncovered2�
uncovered3rGrSrT�link1A�1rZ�link2ArY�link1B�link2B�link1C�link2CrI)rrLrMrNrOrarb�site4�name4�site5�name5�site6�name6�
uncovered_dn1rh�
uncovered_dn2ri�
uncovered_dn3rjrQ�to_checkrrr�0test_complex_setup_with_multiple_uncovered_sites*s�

�
�
�
�
�
�
�zBSiteCoverageTests.test_complex_setup_with_multiple_uncovered_sitesN)rrrr)r/r8r<rCrRrUrXr\rcrdr|rrrrr,s	
'(r)�__doc__r �samba.tests�samba.kcc.kcc_utilsrrr�samba.credentialsr�
samba.authr�samba.samdbrrr!�TestCaser	rrrrr�<module>s