{ 'startDS' : True } '++++ Application add group entry %s' % newDynamicGroupDn { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , 'dsInstanceDn' : applicationDn , 'dsInstancePswd' : applicationPswd , 'DNToAdd' : newDynamicGroupDn, 'listAttributes' : listAttr } '++++ Application do a search to check the entry has been created' { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , 'dsInstanceDn' : applicationDn , 'dsInstancePswd' : applicationPswd , 'dsBaseDN' : newDynamicGroupDn , 'dsFilter' : 'objectclass=*' , 'dsAttributes' : 'uniquemember' } { 'baseDn' : user0Dn , 'string2find' : newDynamicGroupDn , 'nbExpected' : 1 } '++++ Delete the group entry %s' % newDynamicGroupDn { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , 'dsInstanceDn' : applicationDn , 'dsInstancePswd' : applicationPswd , 'dsBaseDN' : newDynamicGroupDn, } '++++ Check the group entry %s no more exist' % newDynamicGroup { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , 'dsInstanceDn' : applicationDn , 'dsInstancePswd' : applicationPswd , 'dsBaseDN' : newDynamicGroupDn , 'dsFilter' : 'objectclass=*' , 'expectedRC' : 32 } { 'baseDn' : user0Dn , 'string2find' : newDynamicGroupDn , 'nbExpected' : 0 } '++++ %s search itself (should PASS as not a member of dynamic group)' % user1 { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , 'dsInstanceDn' : user1Dn , 'dsInstancePswd' : user1Pswd , 'dsBaseDN' : user1Dn , 'dsFilter' : 'objectclass=*' , 'expectedRC' : 0 } { 'baseDn' : user1Dn , 'string2find' : dynamicGroupDn , 'nbExpected' : 0 } '++++ %s search itself (should be refused as dynamic group does not have the permission)' % user2 { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , 'dsInstanceDn' : user2Dn , 'dsInstancePswd' : user2Pswd , 'dsBaseDN' : user2Dn , 'dsFilter' : 'objectclass=*' , 'expectedRC' : 0 } '++++ Check the search returns nothing' { 'string2find' : 'dn' , 'mainString' : STAXResult[0][1] , 'nbExpected' : 0 } { 'baseDn' : user2Dn , 'string2find' : dynamicGroupDn , 'nbExpected' : 1 } '++++ Application add a new user %s / %s ' % (user2AddDn,user2AddPswd) { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , 'dsInstanceDn' : applicationDn , 'dsInstancePswd' : applicationPswd , 'DNToAdd' : user2AddDn, 'listAttributes' : listAttr } '++++ %s search itself (should be refused as dynamic group does not have permission)' % user2Add { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , 'dsInstanceDn' : user2AddDn , 'dsInstancePswd' : user2AddPswd , 'dsBaseDN' : user2AddDn , 'dsFilter' : 'objectclass=*' , 'expectedRC' : 0 } '++++ Check the search returns nothing' { 'string2find' : 'dn' , 'mainString' : STAXResult[0][1] , 'nbExpected' : 0 } { 'baseDn' : user2AddDn , 'string2find' : dynamicGroupDn , 'nbExpected' : 1 } '++++ Application delete user %s' % user2Add { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , 'dsInstanceDn' : applicationDn , 'dsInstancePswd' : applicationPswd , 'dsBaseDN' : user2AddDn } '++++ Check the entry %s no more exist' % user2Add { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , 'dsInstanceDn' : applicationDn , 'dsInstancePswd' : applicationPswd , 'dsBaseDN' : user2AddDn , 'dsFilter' : 'objectclass=*' , 'dsAttributes' : 'dn', 'expectedRC' : 32 } '++++ %s do a search (should fail)' % user2Add { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST , 'dsInstancePort' : DIRECTORY_INSTANCE_PORT , 'dsInstanceDn' : user2AddDn , 'dsInstancePswd' : user2AddPswd , 'dsBaseDN' : user2AddDn , 'dsFilter' : 'objectclass=*' , 'expectedRC' : 49 } { 'stopDS' : True }