ó
E®Uc           @   sÜ   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 m	 Z	 m
 Z
 d d l m Z m Z d d l m Z d d l m Z d d l m Z d d	 l m Z d d
 l m Z d e f d „  ƒ  YZ d S(   s   Tests for samba.samdb.iÿÿÿÿN(   t   system_session(   t   setup_samdbt   guess_namest   make_smbconft   provision_paths_from_lp(   t   DEFAULT_POLICY_GUIDt   DEFAULT_DC_POLICY_GUID(   t   ProvisionBackend(   t   TestCaseInTempDir(   t   security(   t   Schema(   t   paramt   SamDBTestCasec           B   s    e  Z d  Z d „  Z d „  Z RS(   s¥   Base-class for tests with a Sam Database.

    This is used by the Samba SamDB-tests, but e.g. also by the OpenChange
    provisioning tests (which need a Sam).
    c         C   s
  t  t |  ƒ j ƒ  t t j ƒ  ƒ } d } | |  _ d | } d | } t t j ƒ  ƒ } t } t j	 ƒ  } t
 j j |  j d ƒ } t ƒ  }	 d }
 d } d } d } t } t
 j j |  j d	 ƒ } t | |
 | | |  j d
 | ƒt j ƒ  |  _ |  j j | ƒ t d |  j d |
 d | d | d
 | d |  j d | d | ƒ } t |  j | j ƒ } t j d ƒ } t d d | d |  j d d  d | d | ƒ} t | d | d | j d | j d t ƒ} t  | |	 | |  j | | | | | | t d d d | d d  d d | ƒ|  _! d  S(   Ns   DC=COM,DC=EXAMPLEs   CN=Configuration,s
   CN=Schema,s	   samdb.ldbt   foot   EXAMPLEs   example.coms   domain controllers   smb.conft
   serverrolet   lpt   hostnamet   domaint	   dnsdomaint   domaindnt   configdnt   schemadnt	   provisiont   ldbt   pathst   credentialst   namest   loggert   invocationidt   serverdnt   am_rodct   secrett   schema("   t   superR   t   setUpt   strt   uuidt   uuid4R   R   R	   t
   random_sidt   ost   patht   joint   tempdirR    R   R   R   t   LoadParmR   t   loadR   R   R   t   loggingt	   getLoggerR   t   NoneR
   R   R   t   FalseR   t   samdb(   t   selfR   R   R   R   t
   domainguidt
   policyguidt	   domainsidR)   t   session_infoR   R   R   R   t   policyguid_dct   smbconfR   R   R   t   provision_backendR!   (    (    s5   /usr/lib/python2.7/dist-packages/samba/tests/samdb.pyR#   *   sN    	

				c         C   sV   x< d d d d d g D]% } t  j t  j j |  j | ƒ ƒ q Wt t |  ƒ j ƒ  d  S(   Ns
   schema.ldbs   configuration.ldbs	   users.ldbs	   samdb.ldbs   smb.conf(   R(   t   removeR)   R*   R+   R"   R   t   tearDown(   R3   t   f(    (    s5   /usr/lib/python2.7/dist-packages/samba/tests/samdb.pyR<   \   s    	#(   t   __name__t
   __module__t   __doc__R#   R<   (    (    (    s5   /usr/lib/python2.7/dist-packages/samba/tests/samdb.pyR   #   s   	2(   R@   R.   R(   R%   t
   samba.authR    t   samba.provisionR   R   R   R   R   R   t   samba.provision.backendR   t   samba.testsR   t   samba.dcerpcR	   t   samba.schemaR
   t   sambaR   R   (    (    (    s5   /usr/lib/python2.7/dist-packages/samba/tests/samdb.pyt   <module>   s   "