mirror of
https://github.com/apache/cloudstack
synced 2026-08-02 05:26:35 +00:00
CLOUDSTACK-8647: fixed unittests
This commit is contained in:
parent
2825c07b38
commit
6cb5d3a3bc
@ -39,10 +39,11 @@ class ADLdapUserManagerImplSpec extends spock.lang.Specification {
|
||||
adLdapUserManager._ldapConfiguration = ldapConfiguration;
|
||||
}
|
||||
|
||||
def "test generate AD search filter"() {
|
||||
def "test generate AD search filter with nested groups enabled"() {
|
||||
ldapConfiguration.getUserObject() >> "user"
|
||||
ldapConfiguration.getCommonNameAttribute() >> "CN"
|
||||
ldapConfiguration.getBaseDn() >> "DC=cloud,DC=citrix,DC=com"
|
||||
ldapConfiguration.isNestedGroupsEnabled() >> true
|
||||
|
||||
def result = adLdapUserManager.generateADGroupSearchFilter(group);
|
||||
expect:
|
||||
@ -52,6 +53,20 @@ class ADLdapUserManagerImplSpec extends spock.lang.Specification {
|
||||
group << ["dev", "dev-hyd"]
|
||||
}
|
||||
|
||||
def "test generate AD search filter with nested groups disabled"() {
|
||||
ldapConfiguration.getUserObject() >> "user"
|
||||
ldapConfiguration.getCommonNameAttribute() >> "CN"
|
||||
ldapConfiguration.getBaseDn() >> "DC=cloud,DC=citrix,DC=com"
|
||||
ldapConfiguration.isNestedGroupsEnabled() >> false
|
||||
|
||||
def result = adLdapUserManager.generateADGroupSearchFilter(group);
|
||||
expect:
|
||||
assert result.contains("memberOf=")
|
||||
result == "(&(objectClass=user)(memberOf=CN=" + group + ",DC=cloud,DC=citrix,DC=com))"
|
||||
where:
|
||||
group << ["dev", "dev-hyd"]
|
||||
}
|
||||
|
||||
def "test getUsersInGroup null group"() {
|
||||
ldapConfiguration.getScope() >> SearchControls.SUBTREE_SCOPE
|
||||
ldapConfiguration.getReturnAttributes() >> ["username", "firstname", "lastname", "email"]
|
||||
|
||||
@ -22,6 +22,7 @@ import com.cloud.utils.Pair
|
||||
import org.apache.cloudstack.ldap.LdapAuthenticator
|
||||
import org.apache.cloudstack.ldap.LdapConfigurationVO
|
||||
import org.apache.cloudstack.ldap.LdapManager
|
||||
import org.apache.cloudstack.ldap.LdapUser
|
||||
|
||||
class LdapAuthenticatorSpec extends spock.lang.Specification {
|
||||
|
||||
@ -40,7 +41,10 @@ class LdapAuthenticatorSpec extends spock.lang.Specification {
|
||||
def "Test failed authentication due to ldap bind being unsuccessful"() {
|
||||
given: "We have an LdapManager, LdapConfiguration, userAccountDao and LdapAuthenticator"
|
||||
def ldapManager = Mock(LdapManager)
|
||||
def ldapUser = Mock(LdapUser)
|
||||
ldapUser.isDisabled() >> false
|
||||
ldapManager.isLdapEnabled() >> true
|
||||
ldapManager.getUser("rmurphy") >> ldapUser
|
||||
ldapManager.canAuthenticate(_, _) >> false
|
||||
|
||||
UserAccountDao userAccountDao = Mock(UserAccountDao)
|
||||
@ -72,8 +76,11 @@ class LdapAuthenticatorSpec extends spock.lang.Specification {
|
||||
def "Test successful authentication"() {
|
||||
given: "We have an LdapManager, LdapConfiguration, userAccountDao and LdapAuthenticator"
|
||||
def ldapManager = Mock(LdapManager)
|
||||
def ldapUser = Mock(LdapUser)
|
||||
ldapUser.isDisabled() >> false
|
||||
ldapManager.isLdapEnabled() >> true
|
||||
ldapManager.canAuthenticate(_, _) >> true
|
||||
ldapManager.getUser("rmurphy") >> ldapUser
|
||||
|
||||
UserAccountDao userAccountDao = Mock(UserAccountDao)
|
||||
userAccountDao.getUserAccount(_, _) >> new UserAccountVO()
|
||||
|
||||
@ -127,7 +127,7 @@ class LdapConfigurationSpec extends spock.lang.Specification {
|
||||
when: "Get return attributes is called"
|
||||
String[] returnAttributes = ldapConfiguration.getReturnAttributes()
|
||||
then: "An array containing uid, mail, givenname, sn and cn is returned"
|
||||
returnAttributes == ["uid", "mail", "givenname", "sn", "cn"]
|
||||
returnAttributes == ["uid", "mail", "givenname", "sn", "cn", "userAccountControl"]
|
||||
}
|
||||
|
||||
def "Test that getScope returns SearchControls.SUBTREE_SCOPE"() {
|
||||
|
||||
@ -53,7 +53,7 @@ class LdapCreateAccountCmdSpec extends spock.lang.Specification {
|
||||
def "Test failed creation due to a null response from cloudstack account creater"() {
|
||||
given: "We have an LdapManager, AccountService and LdapCreateAccountCmd"
|
||||
LdapManager ldapManager = Mock(LdapManager)
|
||||
ldapManager.getUser(_) >> new LdapUser("rmurphy", "rmurphy@cloudstack.org", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering")
|
||||
ldapManager.getUser(_) >> new LdapUser("rmurphy", "rmurphy@cloudstack.org", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering", false)
|
||||
AccountService accountService = Mock(AccountService)
|
||||
def ldapCreateAccountCmd = Spy(LdapCreateAccountCmd, constructorArgs: [ldapManager, accountService])
|
||||
ldapCreateAccountCmd.getCurrentContext() >> Mock(CallContext)
|
||||
@ -105,7 +105,7 @@ class LdapCreateAccountCmdSpec extends spock.lang.Specification {
|
||||
AccountService accountService = Mock(AccountService)
|
||||
def ldapCreateAccountCmd = new LdapCreateAccountCmd(ldapManager, accountService);
|
||||
when: "a user with an username, email, firstname and lastname is validated"
|
||||
def result = ldapCreateAccountCmd.validateUser(new LdapUser("username", "email", "firstname", "lastname", "principal", "domain"))
|
||||
def result = ldapCreateAccountCmd.validateUser(new LdapUser("username", "email", "firstname", "lastname", "principal", "domain", false))
|
||||
then: "the result is true"
|
||||
result == true
|
||||
}
|
||||
@ -116,7 +116,7 @@ class LdapCreateAccountCmdSpec extends spock.lang.Specification {
|
||||
AccountService accountService = Mock(AccountService)
|
||||
def ldapCreateAccountCmd = new LdapCreateAccountCmd(ldapManager, accountService)
|
||||
when: "A user with no email address attempts to validate"
|
||||
ldapCreateAccountCmd.validateUser(new LdapUser("username", null, "firstname", "lastname", "principal", "domain"))
|
||||
ldapCreateAccountCmd.validateUser(new LdapUser("username", null, "firstname", "lastname", "principal", "domain", false))
|
||||
then: "An exception is thrown"
|
||||
thrown Exception
|
||||
}
|
||||
@ -127,7 +127,7 @@ class LdapCreateAccountCmdSpec extends spock.lang.Specification {
|
||||
AccountService accountService = Mock(AccountService)
|
||||
def ldapCreateAccountCmd = new LdapCreateAccountCmd(ldapManager, accountService)
|
||||
when: "A user with no firstname attempts to validate"
|
||||
ldapCreateAccountCmd.validateUser(new LdapUser("username", "email", null, "lastname", "principal"))
|
||||
ldapCreateAccountCmd.validateUser(new LdapUser("username", "email", null, "lastname", "principal", false))
|
||||
then: "An exception is thrown"
|
||||
thrown Exception
|
||||
}
|
||||
@ -138,7 +138,7 @@ class LdapCreateAccountCmdSpec extends spock.lang.Specification {
|
||||
AccountService accountService = Mock(AccountService)
|
||||
def ldapCreateAccountCmd = new LdapCreateAccountCmd(ldapManager, accountService)
|
||||
when: "A user with no lastname attempts to validate"
|
||||
ldapCreateAccountCmd.validateUser(new LdapUser("username", "email", "firstname", null, "principal", "domain"))
|
||||
ldapCreateAccountCmd.validateUser(new LdapUser("username", "email", "firstname", null, "principal", "domain", false))
|
||||
then: "An exception is thown"
|
||||
thrown Exception
|
||||
}
|
||||
|
||||
@ -53,8 +53,8 @@ class LdapImportUsersCmdSpec extends spock.lang.Specification {
|
||||
def accountService = Mock(AccountService)
|
||||
|
||||
List<LdapUser> users = new ArrayList()
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering"))
|
||||
users.add(new LdapUser("bob", "bob@test.com", "Robert", "Young", "cn=bob,ou=engineering,dc=cloudstack,dc=org", "engineering"))
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering", false))
|
||||
users.add(new LdapUser("bob", "bob@test.com", "Robert", "Young", "cn=bob,ou=engineering,dc=cloudstack,dc=org", "engineering", false))
|
||||
ldapManager.getUsers() >> users
|
||||
LdapUserResponse response1 = new LdapUserResponse("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering")
|
||||
LdapUserResponse response2 = new LdapUserResponse("bob", "bob@test.com", "Robert", "Young", "cn=bob,ou=engineering,dc=cloudstack,dc=org", "engineering")
|
||||
@ -81,8 +81,8 @@ class LdapImportUsersCmdSpec extends spock.lang.Specification {
|
||||
def accountService = Mock(AccountService)
|
||||
|
||||
List<LdapUser> users = new ArrayList()
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering"))
|
||||
users.add(new LdapUser("bob", "bob@test.com", "Robert", "Young", "cn=bob,ou=engineering,dc=cloudstack,dc=org", "engineering"))
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering", false))
|
||||
users.add(new LdapUser("bob", "bob@test.com", "Robert", "Young", "cn=bob,ou=engineering,dc=cloudstack,dc=org", "engineering", false))
|
||||
ldapManager.getUsersInGroup("TestGroup") >> users
|
||||
LdapUserResponse response1 = new LdapUserResponse("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering")
|
||||
LdapUserResponse response2 = new LdapUserResponse("bob", "bob@test.com", "Robert", "Young", "cn=bob,ou=engineering,dc=cloudstack,dc=org", "engineering")
|
||||
@ -110,8 +110,8 @@ class LdapImportUsersCmdSpec extends spock.lang.Specification {
|
||||
def accountService = Mock(AccountService)
|
||||
|
||||
List<LdapUser> users = new ArrayList()
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering"))
|
||||
users.add(new LdapUser("bob", "bob@test.com", "Robert", "Young", "cn=bob,ou=engineering,dc=cloudstack,dc=org", "engineering"))
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering", false))
|
||||
users.add(new LdapUser("bob", "bob@test.com", "Robert", "Young", "cn=bob,ou=engineering,dc=cloudstack,dc=org", "engineering", false))
|
||||
ldapManager.getUsersInGroup("TestGroup") >> users
|
||||
LdapUserResponse response1 = new LdapUserResponse("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering")
|
||||
LdapUserResponse response2 = new LdapUserResponse("bob", "bob@test.com", "Robert", "Young", "cn=bob,ou=engineering,dc=cloudstack,dc=org", "engineering")
|
||||
@ -139,8 +139,8 @@ class LdapImportUsersCmdSpec extends spock.lang.Specification {
|
||||
def accountService = Mock(AccountService)
|
||||
|
||||
List<LdapUser> users = new ArrayList()
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering"))
|
||||
users.add(new LdapUser("bob", "bob@test.com", "Robert", "Young", "cn=bob,ou=engineering,dc=cloudstack,dc=org", "engineering"))
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering", false))
|
||||
users.add(new LdapUser("bob", "bob@test.com", "Robert", "Young", "cn=bob,ou=engineering,dc=cloudstack,dc=org", "engineering", false))
|
||||
ldapManager.getUsers() >> users
|
||||
LdapUserResponse response1 = new LdapUserResponse("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering")
|
||||
LdapUserResponse response2 = new LdapUserResponse("bob", "bob@test.com", "Robert", "Young", "cn=bob,ou=engineering,dc=cloudstack,dc=org", "engineering")
|
||||
@ -169,8 +169,8 @@ class LdapImportUsersCmdSpec extends spock.lang.Specification {
|
||||
ldapImportUsersCmd.domainId = varDomainId
|
||||
ldapImportUsersCmd.groupName = varGroupName
|
||||
|
||||
def ldapUser1 = new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering")
|
||||
def ldapUser2 = new LdapUser("bob", "bob@test.com", "Robert", "Young", "cn=bob,ou=engineering,dc=cloudstack,dc=org", "engineering");
|
||||
def ldapUser1 = new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering", false)
|
||||
def ldapUser2 = new LdapUser("bob", "bob@test.com", "Robert", "Young", "cn=bob,ou=engineering,dc=cloudstack,dc=org", "engineering", false);
|
||||
|
||||
Domain domain = new DomainVO(expectedDomainName, 1L, 1L, expectedDomainName, UUID.randomUUID().toString());
|
||||
if (varDomainId != null) {
|
||||
@ -204,7 +204,7 @@ class LdapImportUsersCmdSpec extends spock.lang.Specification {
|
||||
given: "We have an LdapManager, DomainService, two users and a LdapImportUsersCmd"
|
||||
def ldapManager = Mock(LdapManager)
|
||||
List<LdapUser> users = new ArrayList()
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering"))
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering", false))
|
||||
ldapManager.getUsers() >> users
|
||||
LdapUserResponse response1 = new LdapUserResponse("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering")
|
||||
ldapManager.createLdapUserResponse(_) >>> response1
|
||||
@ -234,7 +234,7 @@ class LdapImportUsersCmdSpec extends spock.lang.Specification {
|
||||
given: "We have an LdapManager, DomainService, two users and a LdapImportUsersCmd"
|
||||
def ldapManager = Mock(LdapManager)
|
||||
List<LdapUser> users = new ArrayList()
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering"))
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering", false))
|
||||
ldapManager.getUsers() >> users
|
||||
LdapUserResponse response1 = new LdapUserResponse("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering")
|
||||
ldapManager.createLdapUserResponse(_) >>> response1
|
||||
@ -263,7 +263,7 @@ class LdapImportUsersCmdSpec extends spock.lang.Specification {
|
||||
given: "We have an LdapManager, DomainService, two users and a LdapImportUsersCmd"
|
||||
def ldapManager = Mock(LdapManager)
|
||||
List<LdapUser> users = new ArrayList()
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering"))
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering", false))
|
||||
ldapManager.getUsers() >> users
|
||||
LdapUserResponse response1 = new LdapUserResponse("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering")
|
||||
ldapManager.createLdapUserResponse(_) >>> response1
|
||||
|
||||
@ -53,7 +53,7 @@ class LdapListUsersCmdSpec extends spock.lang.Specification {
|
||||
given: "We have an LdapManager, one user, QueryService and a LdapListUsersCmd"
|
||||
def ldapManager = Mock(LdapManager)
|
||||
List<LdapUser> users = new ArrayList()
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,dc=cloudstack,dc=org", null))
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,dc=cloudstack,dc=org", null, false))
|
||||
ldapManager.getUsers() >> users
|
||||
LdapUserResponse response = new LdapUserResponse("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,dc=cloudstack,dc=org", null)
|
||||
ldapManager.createLdapUserResponse(_) >> response
|
||||
@ -92,7 +92,7 @@ class LdapListUsersCmdSpec extends spock.lang.Specification {
|
||||
|
||||
queryService.searchForUsers(_) >> queryServiceResponse
|
||||
|
||||
def ldapUser = new LdapUser("rmurphy", "rmurphy@cloudstack.org", "Ryan", "Murphy", "cn=rmurphy,dc=cloudstack,dc=org", null)
|
||||
def ldapUser = new LdapUser("rmurphy", "rmurphy@cloudstack.org", "Ryan", "Murphy", "cn=rmurphy,dc=cloudstack,dc=org", null, false)
|
||||
def ldapListUsersCmd = new LdapListUsersCmd(ldapManager,queryService)
|
||||
|
||||
when: "isACloudstackUser is executed"
|
||||
@ -109,7 +109,7 @@ class LdapListUsersCmdSpec extends spock.lang.Specification {
|
||||
|
||||
queryService.searchForUsers(_) >> new ListResponse<UserResponse>()
|
||||
|
||||
def ldapUser = new LdapUser("rmurphy", "rmurphy@cloudstack.org", "Ryan", "Murphy", "cn=rmurphy,dc=cloudstack,dc=org", null)
|
||||
def ldapUser = new LdapUser("rmurphy", "rmurphy@cloudstack.org", "Ryan", "Murphy", "cn=rmurphy,dc=cloudstack,dc=org", null, false)
|
||||
def ldapListUsersCmd = new LdapListUsersCmd(ldapManager,queryService)
|
||||
|
||||
when: "isACloudstackUser is executed"
|
||||
|
||||
@ -24,6 +24,7 @@ import org.apache.cloudstack.api.command.LdapDeleteConfigurationCmd
|
||||
import org.apache.cloudstack.api.command.LdapImportUsersCmd
|
||||
import org.apache.cloudstack.api.command.LdapListUsersCmd
|
||||
import org.apache.cloudstack.api.command.LdapUserSearchCmd
|
||||
import org.apache.cloudstack.api.command.LinkDomainToLdapCmd
|
||||
|
||||
import javax.naming.NamingException
|
||||
import javax.naming.ldap.InitialLdapContext
|
||||
@ -111,7 +112,7 @@ class LdapManagerImplSpec extends spock.lang.Specification {
|
||||
def ldapManager = new LdapManagerImpl(ldapConfigurationDao, ldapContextFactory, ldapUserManagerFactory, ldapConfiguration)
|
||||
when: "A ldap user response is generated"
|
||||
def result = ldapManager.createLdapUserResponse(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org",
|
||||
"engineering"))
|
||||
"engineering", false))
|
||||
then: "The result of the response should match the given ldap user"
|
||||
result.username == "rmurphy"
|
||||
result.email == "rmurphy@test.com"
|
||||
@ -131,7 +132,7 @@ class LdapManagerImplSpec extends spock.lang.Specification {
|
||||
ldapUserManagerFactory.getInstance(_) >> ldapUserManager
|
||||
ldapContextFactory.createBindContext() >> null
|
||||
List<LdapUser> users = new ArrayList<>();
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,dc=cloudstack,dc=org", null))
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,dc=cloudstack,dc=org", null, false))
|
||||
ldapUserManager.getUsers(_) >> users;
|
||||
def ldapManager = new LdapManagerImpl(ldapConfigurationDao, ldapContextFactory, ldapUserManagerFactory, ldapConfiguration)
|
||||
when: "We search for a group of users"
|
||||
@ -149,7 +150,7 @@ class LdapManagerImplSpec extends spock.lang.Specification {
|
||||
def ldapConfiguration = Mock(LdapConfiguration)
|
||||
ldapUserManagerFactory.getInstance(_) >> ldapUserManager
|
||||
ldapContextFactory.createBindContext() >> null
|
||||
ldapUserManager.getUser(_, _) >> new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,dc=cloudstack,dc=org", null)
|
||||
ldapUserManager.getUser(_, _) >> new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,dc=cloudstack,dc=org", null, false)
|
||||
def ldapManager = new LdapManagerImpl(ldapConfigurationDao, ldapContextFactory, ldapUserManagerFactory, ldapConfiguration)
|
||||
when: "We search for a user"
|
||||
def result = ldapManager.getUser("rmurphy")
|
||||
@ -194,22 +195,6 @@ class LdapManagerImplSpec extends spock.lang.Specification {
|
||||
result == false
|
||||
}
|
||||
|
||||
def "Test successful failed result from canAuthenticate due to user not found"() {
|
||||
given: "We have an LdapConfigurationDao, LdapContextFactory, LdapUserManager and LdapManager"
|
||||
def ldapConfigurationDao = Mock(LdapConfigurationDaoImpl)
|
||||
def ldapContextFactory = Mock(LdapContextFactory)
|
||||
def ldapUserManager = Mock(LdapUserManager)
|
||||
def ldapUserManagerFactory = Mock(LdapUserManagerFactory)
|
||||
ldapUserManagerFactory.getInstance(_) >> ldapUserManager
|
||||
def ldapConfiguration = Mock(LdapConfiguration)
|
||||
def ldapManager = Spy(LdapManagerImpl, constructorArgs: [ldapConfigurationDao, ldapContextFactory, ldapUserManagerFactory, ldapConfiguration])
|
||||
ldapManager.getUser(_) >> { throw new NamingException() }
|
||||
when: "The user attempts to authenticate and the user is not found"
|
||||
def result = ldapManager.canAuthenticate("rmurphy", "password")
|
||||
then: "the authentication fails"
|
||||
result == false
|
||||
}
|
||||
|
||||
def "Test successful failed result from deleteConfiguration due to configuration not existing"() {
|
||||
given: "We have an LdapConfigurationDao, LdapContextFactory, LdapUserManager and LdapManager"
|
||||
def ldapConfigurationDao = Mock(LdapConfigurationDaoImpl)
|
||||
@ -293,7 +278,7 @@ class LdapManagerImplSpec extends spock.lang.Specification {
|
||||
ldapContextFactory.createBindContext() >> null;
|
||||
|
||||
List<LdapUser> users = new ArrayList<LdapUser>();
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering"))
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,ou=engineering,dc=cloudstack,dc=org", "engineering", false))
|
||||
ldapUserManager.getUsers(_, _) >> users;
|
||||
|
||||
def ldapManager = new LdapManagerImpl(ldapConfigurationDao, ldapContextFactory, ldapUserManagerFactory, ldapConfiguration)
|
||||
@ -364,6 +349,7 @@ class LdapManagerImplSpec extends spock.lang.Specification {
|
||||
cmdList.add(LdapImportUsersCmd.class);
|
||||
cmdList.add(LDAPConfigCmd.class);
|
||||
cmdList.add(LDAPRemoveCmd.class);
|
||||
cmdList.add(LinkDomainToLdapCmd.class)
|
||||
return cmdList
|
||||
}
|
||||
|
||||
@ -434,7 +420,7 @@ class LdapManagerImplSpec extends spock.lang.Specification {
|
||||
ldapUserManagerFactory.getInstance(_) >> ldapUserManager
|
||||
ldapContextFactory.createBindContext() >> null
|
||||
List<LdapUser> users = new ArrayList<>();
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,dc=cloudstack,dc=org", "engineering"))
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,dc=cloudstack,dc=org", "engineering", false))
|
||||
ldapUserManager.getUsersInGroup("engineering", _) >> users;
|
||||
def ldapManager = new LdapManagerImpl(ldapConfigurationDao, ldapContextFactory, ldapUserManagerFactory, ldapConfiguration)
|
||||
when: "We search for a group of users"
|
||||
|
||||
@ -48,7 +48,7 @@ class LdapSearchUserCmdSpec extends spock.lang.Specification {
|
||||
given: "We have an Ldap manager and ldap user search cmd"
|
||||
def ldapManager = Mock(LdapManager)
|
||||
List<LdapUser> users = new ArrayList()
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,dc=cloudstack,dc=org", null))
|
||||
users.add(new LdapUser("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,dc=cloudstack,dc=org", null, false))
|
||||
ldapManager.searchUsers(_) >> users
|
||||
LdapUserResponse response = new LdapUserResponse("rmurphy", "rmurphy@test.com", "Ryan", "Murphy", "cn=rmurphy,dc=cloudstack,dc=org", null)
|
||||
ldapManager.createLdapUserResponse(_) >> response
|
||||
|
||||
@ -22,7 +22,7 @@ class LdapUserSpec extends spock.lang.Specification {
|
||||
|
||||
def "Testing LdapUsers hashCode generation"() {
|
||||
given:
|
||||
def userA = new LdapUser(usernameA, "", "", "", "", "")
|
||||
def userA = new LdapUser(usernameA, "", "", "", "", "", false)
|
||||
expect:
|
||||
userA.hashCode() == usernameA.hashCode()
|
||||
where:
|
||||
@ -31,8 +31,8 @@ class LdapUserSpec extends spock.lang.Specification {
|
||||
|
||||
def "Testing that LdapUser successfully gives the correct result for a compare to"() {
|
||||
given: "You have created two LDAP user objects"
|
||||
def userA = new LdapUser(usernameA, "", "", "", "", "")
|
||||
def userB = new LdapUser(usernameB, "", "", "", "", "")
|
||||
def userA = new LdapUser(usernameA, "", "", "", "", "", false)
|
||||
def userB = new LdapUser(usernameB, "", "", "", "", "", false)
|
||||
expect: "That when compared the result is less than or equal to 0"
|
||||
userA.compareTo(userB) <= 0
|
||||
where: "The following values are used"
|
||||
@ -43,8 +43,8 @@ class LdapUserSpec extends spock.lang.Specification {
|
||||
|
||||
def "Testing that LdapUsers equality"() {
|
||||
given:
|
||||
def userA = new LdapUser(usernameA, "", "", "", "", "")
|
||||
def userB = new LdapUser(usernameB, "", "", "", "", "")
|
||||
def userA = new LdapUser(usernameA, "", "", "", "", "", false)
|
||||
def userB = new LdapUser(usernameB, "", "", "", "", "", false)
|
||||
expect:
|
||||
userA.equals(userA) == true
|
||||
userA.equals(new Object()) == false
|
||||
@ -56,7 +56,7 @@ class LdapUserSpec extends spock.lang.Specification {
|
||||
|
||||
def "Testing that the username is correctly set with the ldap object"() {
|
||||
given: "You have created a LDAP user object with a username"
|
||||
def user = new LdapUser(username, "", "", "", "", "")
|
||||
def user = new LdapUser(username, "", "", "", "", "", false)
|
||||
expect: "The username is equal to the given data source"
|
||||
user.getUsername() == username
|
||||
where: "The username is set to "
|
||||
@ -65,7 +65,7 @@ class LdapUserSpec extends spock.lang.Specification {
|
||||
|
||||
def "Testing the email is correctly set with the ldap object"() {
|
||||
given: "You have created a LDAP user object with a email"
|
||||
def user = new LdapUser("", email, "", "", "", "")
|
||||
def user = new LdapUser("", email, "", "", "", "", false)
|
||||
expect: "The email is equal to the given data source"
|
||||
user.getEmail() == email
|
||||
where: "The email is set to "
|
||||
@ -74,7 +74,7 @@ class LdapUserSpec extends spock.lang.Specification {
|
||||
|
||||
def "Testing the firstname is correctly set with the ldap object"() {
|
||||
given: "You have created a LDAP user object with a firstname"
|
||||
def user = new LdapUser("", "", firstname, "", "", "")
|
||||
def user = new LdapUser("", "", firstname, "", "", "", false)
|
||||
expect: "The firstname is equal to the given data source"
|
||||
user.getFirstname() == firstname
|
||||
where: "The firstname is set to "
|
||||
@ -83,7 +83,7 @@ class LdapUserSpec extends spock.lang.Specification {
|
||||
|
||||
def "Testing the lastname is correctly set with the ldap object"() {
|
||||
given: "You have created a LDAP user object with a lastname"
|
||||
def user = new LdapUser("", "", "", lastname, "", "")
|
||||
def user = new LdapUser("", "", "", lastname, "", "", false)
|
||||
expect: "The lastname is equal to the given data source"
|
||||
user.getLastname() == lastname
|
||||
where: "The lastname is set to "
|
||||
@ -92,7 +92,7 @@ class LdapUserSpec extends spock.lang.Specification {
|
||||
|
||||
def "Testing the principal is correctly set with the ldap object"() {
|
||||
given: "You have created a LDAP user object with a principal"
|
||||
def user = new LdapUser("", "", "", "", principal, "")
|
||||
def user = new LdapUser("", "", "", "", principal, "", false)
|
||||
expect: "The principal is equal to the given data source"
|
||||
user.getPrincipal() == principal
|
||||
where: "The principal is set to "
|
||||
@ -101,7 +101,7 @@ class LdapUserSpec extends spock.lang.Specification {
|
||||
|
||||
def "Testing the domain is correctly set with the ldap object"() {
|
||||
given: "You have created a LDAP user object with a principal"
|
||||
def user = new LdapUser("", "", "", "", "", domain)
|
||||
def user = new LdapUser("", "", "", "", "", domain, false)
|
||||
expect: "The principal is equal to the given data source"
|
||||
user.getDomain() == domain
|
||||
where: "The username is set to "
|
||||
|
||||
Loading…
Reference in New Issue
Block a user