
    b                     >    d dl Z d dlZd dlmZ  G d de          ZdS )    N)SambaToolCmdTestc                   H     e Zd ZdZdZ fdZ fdZd Zd Zd Z	d Z
 xZS )	SchemaCmdTestCasez&Tests for samba-tool dsacl subcommandsNc           	          t          t          |                                            |                     ddt          j        d         z  dt          j        d         dt          j        d                   | _        d S )N-H	ldap://%s	DC_SERVER-UDC_USERNAME%DC_PASSWORD)superr   setUpgetSamDBosenvironsamdbself	__class__s    ?/usr/lib/python3/dist-packages/samba/tests/samba_tool/schema.pyr   zSchemaCmdTestCase.setUp   sn    &&,,...]]4rz+7N)N)N13M1J1J1JBJWdLeLe#fh h


    c                 V    t          t          |                                            d S )N)r   r   tearDownr   s    r   r   zSchemaCmdTestCase.tearDown    s&    &&//11111r   c                 <   |                      dddddt          j        d         z  dt          j        d         d	t          j        d
                   \  }}}|                     |||           |                     |dd           |                     d|           dS )z+Tests that we can display schema attributesschema)	attributeshowuidr   r   r	   r
   r   r   r    Shouldn't be any error messagesz&dn: CN=uid,CN=Schema,CN=Configuration,Nrunsublevelcmdr   r   assertCmdSuccessassertEqualassertInr   resultouterrs       r   test_display_attributez(SchemaCmdTestCase.test_display_attribute#   s    !00 <DEJ15{RZP[E\7\7\?Az-?X?X?X?Az-?X?X2Z[ [c 	fc3///b"CDDD>DDDDDr   c                    |                      ddddddt          j        d         z  dt          j        d	         d
t          j        d                   \  }}}|                     |d           |                      ddddddt          j        d         z  dt          j        d	         d
t          j        d                   \  }}}|                     |||           |                     |dd           |                     d|           |                      ddddddt          j        d         z  dt          j        d	         d
t          j        d                   \  }}}|                     |||           |                     |dd           |                     d|           |                      ddddddt          j        d         z  dt          j        d	         d
t          j        d                   \  }}}|                     |||           |                     |dd           |                     d|           dS )4Tests that we can modify searchFlags of an attributer   )r   modifyr   z--searchflags=9r   r   r	   r
   r   r   r   z!Unknown flag 9, please see --helpz--searchflags=fATTINDEXr    r!   z+modified cn=uid,CN=Schema,CN=Configuration,z(--searchflags=fATTINDEX,fSUBTREEATTINDEXz)--searchflags=fAtTiNdEx,fPRESERVEONDELETEN)r#   r   r   assertCmdFailr$   r%   r&   r'   s       r   !test_modify_attribute_searchflagsz3SchemaCmdTestCase.test_modify_attribute_searchflags/   s   !00 <FGLN_15{RZP[E\7\7\?Az-?X?X?X?Az-?X?X2Z[ [c 	6#FGGG!00 <FGLNg15{RZP[E\7\7\?Az-?X?X?X?Az-?X?X2Z[ [c 	fc3///b"CDDDCSIII!00 <FGL1[15{RZP[E\7\7\?Az-?X?X?X?Az-?X?X2Z	[ [c 	fc3///b"CDDDCSIII!00 <FGL1\15{RZP[E\7\7\?Az-?X?X?X?Az-?X?X2Z	[ [c 	fc3///b"CDDDCSIIIIIr   c                 h   |                      dddddt          j        d         z  dt          j        d         d	t          j        d
                   \  }}}|                     |||           |                     |dd           |                     d|           |                     d|           dS )r-   r   )r   show_occnr   r   r	   r
   r   r   r   r    r!   z--- MAY contain ---z--- MUST contain ---Nr"   r'   s       r   test_show_oc_attributez(SchemaCmdTestCase.test_show_oc_attributeY   s    !00 <GHL15{RZP[E\7\7\?Az-?X?X?X?Az-?X?X2Z[ [c 	fc3///b"CDDD+S111,c22222r   c                 <   |                      dddddt          j        d         z  dt          j        d         d	t          j        d
                   \  }}}|                     |||           |                     |dd           |                     d|           dS )z.Tests that we can display schema objectclassesr   )objectclassr   personr   r   r	   r
   r   r   r   r    r!   z)dn: CN=Person,CN=Schema,CN=Configuration,Nr"   r'   s       r   test_display_objectclassz*SchemaCmdTestCase.test_display_objectclassf   s    !00 <DEM15{RZP[E\7\7\?Az-?X?X?X?Az-?X?X2Z[ [c 	fc3///b"CDDDA3GGGGGr   )__name__
__module____qualname____doc__r   r   r   r+   r0   r4   r8   __classcell__)r   s   @r   r   r      s        00Eh h h h h
2 2 2 2 2
E 
E 
E(J (J (JT3 3 3
H 
H 
H 
H 
H 
H 
Hr   r   )r   ldbsamba.tests.samba_tool.baser   r    r   r   <module>rA      st   $ 
			 



 8 8 8 8 8 8YH YH YH YH YH( YH YH YH YH YHr   