a
    I_>
                     @   s0   d dl mZ d dlZd dlZG dd deZdS )    )SambaToolCmdTestNc                       sD   e Zd ZdZ fddZdd Zdd Z fdd	Zd
d Z  Z	S )UpgradeDnsLmdbTestCasez5
        Tests for dns upgrade on a lmdb backend
    c                    s0   t t|   tj| jd| _t| j d S )NZsamba)	superr   setUpospathjoinZtempdirtempsambadirmkdirself	__class__ C/usr/lib/python3/dist-packages/samba/tests/samba_upgradedns_lmdb.pyr      s    zUpgradeDnsLmdbTestCase.setUpc                 C   s   d| j  }| |S )Nzpsamba-tool domain provision --realm=foo.example.com --domain=FOO --targetdir=%s --backend-store=mdb --use-ntvfs r	   Zrun_commandr   Zcommandr   r   r   	provision$   s
    z UpgradeDnsLmdbTestCase.provisionc                 C   s   d| j  }| |S )NzEsamba_upgradedns --dns-backend=BIND9_DLZ --configfile %s/etc/smb.confr   r   r   r   r   upgrade_dns2   s
    z"UpgradeDnsLmdbTestCase.upgrade_dnsc                    s   t t|   t| j d S )N)r   r   tearDownshutilZrmtreer	   r   r   r   r   r   9   s    zUpgradeDnsLmdbTestCase.tearDownc                 C   sl   |    |   d| j }t|D ]B}|dr$d|v r$d||f }| jtj|d|||f d q$dS )zl
            Ensure that links are created for the lock files as well as the
            data files
        z%s/bind-dns/dns/sam.ldb.dz.ldbZDNSZONESz
%s/%s-lockz+Lock file %s/%s-lock for %s, does not exist)msgN)	r   r   r	   r   listdirendswithZ
assertTruer   isfile)r   Z	directoryfilenameZ	lock_filer   r   r   3test_lmdb_lock_files_linked_on_upgrade_to_bind9_dlz=   s    

zJUpgradeDnsLmdbTestCase.test_lmdb_lock_files_linked_on_upgrade_to_bind9_dlz)
__name__
__module____qualname____doc__r   r   r   r   r   __classcell__r   r   r   r   r      s   r   )Zsamba.tests.samba_tool.baser   r   r   r   r   r   r   r   <module>   s   