File: //lib/python3/dist-packages/samba/tests/__pycache__/netcmd.cpython-310.pyc
o
�/aL � @ s� d Z ddlZddlZddlmZ ddlmZ ddlmZ ddl m
Z
ddlZG dd� dej
j�ZG d d
� d
e�ZG dd� de�ZdS )
zTests for samba.netcmd.� N)�StringIO)�Command)�cmd_testparm)�
cmd_sambatoolc @ s e Zd Zddd�Zdd� ZdS )�NetCmdTestCaser c
C s| |t � t � d�}z|j|jg|�R � }W n ty- } z
|�|� d}W Y d }~nd }~ww | �||� |j�� |j�� fS )N)�outf�errf� ) r �_run�__name__� Exception�show_command_error�assertEqualr �getvaluer )�self� cmd_klass�args�retcode�cmd�retval�e� r �4/usr/lib/python3/dist-packages/samba/tests/netcmd.py�
run_netcmd s
��zNetCmdTestCase.run_netcmdc # s^ � t tj�� �}|r-|�� \� }� |fV t|di �}|�� fdd�|�� D �� |s
d S d S )N�subcommandsc s g | ]\}}� d | |f�qS )� r )�.0�k�v��pathr r �
<listcomp>0 s z7NetCmdTestCase.iter_all_subcommands.<locals>.<listcomp>)�listr r �items�pop�getattr�extend)r �todor �subcmdsr r r �iter_all_subcommands* s �
��z#NetCmdTestCase.iter_all_subcommandsN)r )r �
__module__�__qualname__r r) r r r r r s
r c sD e Zd Z� fdd�Zdd� Zdd� Zdd� Zd d
� Zdd� Z� Z S )
�
TestParmTestsc s t � �� d}| �|�| _d S )Nz[[global]
netbios name = test
lock dir = /
pid directory = /
[tmp]
path = /
)�super�setUp�create_smbconf�smbconf)r �contents�� __class__r r r. 6 s
zTestParmTests.setUpc C sF t jd| jdd�}| �tj|j� z|�|� W |�� |S |�� w )N�wF)�mode�dir�delete) �tempfile�NamedTemporaryFile�tempdir�
addCleanup�os�remove�name�write�close)r r1 r0 r r r r/ D s �
�zTestParmTests.create_smbconfc C s2 | j tdgdd�\}}| �d|� | �d|� d S )Nz--client-name=foo����r � zPERROR: Both a DNS name and an IP address are required for the host access check
)r r r �r �out�errr r r �test_no_client_ipQ s
��zTestParmTests.test_no_client_ipc C s | j td| jj dgd d� d S )N�--configfile=%s�--section-name=tmprB )r r r0 r>