[VIVO-1620] Improve AuthenticateTest performance (#93)
* Improve test execution time Resolves: https://jira.duraspace.org/browse/VIVO-1620
This commit is contained in:
parent
a3cd382117
commit
42dacf1f16
1 changed files with 28 additions and 9 deletions
|
@ -10,15 +10,18 @@ import static org.junit.Assert.assertEquals;
|
||||||
import static org.junit.Assert.assertNotNull;
|
import static org.junit.Assert.assertNotNull;
|
||||||
import static org.junit.Assert.fail;
|
import static org.junit.Assert.fail;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import org.apache.log4j.Level;
|
import org.apache.log4j.Level;
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
|
import org.junit.BeforeClass;
|
||||||
import org.junit.Ignore;
|
import org.junit.Ignore;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
|
||||||
|
@ -119,16 +122,33 @@ public class AuthenticateTest extends AbstractTestClass {
|
||||||
private static final String NO_USER = "";
|
private static final String NO_USER = "";
|
||||||
private static final String NO_MSG = "";
|
private static final String NO_MSG = "";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Due to increased overhead of password hashing, create a list of UserAccount objects once
|
||||||
|
* when the class is cloaded.
|
||||||
|
*
|
||||||
|
* These prepared user accounts will then be (re)used to populate the authenticator stubs prior to each test
|
||||||
|
*/
|
||||||
|
private static List<UserAccount> userAccounts = new ArrayList<>();
|
||||||
|
|
||||||
|
@BeforeClass
|
||||||
|
public static void prepareUserAccounts() {
|
||||||
|
userAccounts.add(createUserFromUserInfo(NEW_DBA));
|
||||||
|
userAccounts.add(createUserFromUserInfo(OLD_DBA));
|
||||||
|
userAccounts.add(createUserFromUserInfo(OLD_SELF));
|
||||||
|
userAccounts.add(createUserFromUserInfo(OLD_STRANGER));
|
||||||
|
}
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setup() throws Exception {
|
public void setup() throws Exception {
|
||||||
I18nStub.setup();
|
I18nStub.setup();
|
||||||
|
|
||||||
authenticatorFactory = new AuthenticatorStub.Factory();
|
authenticatorFactory = new AuthenticatorStub.Factory();
|
||||||
authenticator = authenticatorFactory.getInstance(request);
|
authenticator = authenticatorFactory.getInstance(request);
|
||||||
authenticator.addUser(createUserFromUserInfo(NEW_DBA));
|
|
||||||
authenticator.addUser(createUserFromUserInfo(OLD_DBA));
|
for (UserAccount account : userAccounts) {
|
||||||
authenticator.addUser(createUserFromUserInfo(OLD_SELF));
|
authenticator.addUser(account);
|
||||||
authenticator.addUser(createUserFromUserInfo(OLD_STRANGER));
|
}
|
||||||
|
|
||||||
authenticator.setAssociatedUri(OLD_SELF.username,
|
authenticator.setAssociatedUri(OLD_SELF.username,
|
||||||
"old_self_associated_uri");
|
"old_self_associated_uri");
|
||||||
|
|
||||||
|
@ -143,10 +163,9 @@ public class AuthenticateTest extends AbstractTestClass {
|
||||||
|
|
||||||
userAccountsDao = new UserAccountsDaoStub();
|
userAccountsDao = new UserAccountsDaoStub();
|
||||||
userAccountsDao.addPermissionSet(adminPermissionSet);
|
userAccountsDao.addPermissionSet(adminPermissionSet);
|
||||||
userAccountsDao.addUser(createUserFromUserInfo(NEW_DBA));
|
for (UserAccount account : userAccounts) {
|
||||||
userAccountsDao.addUser(createUserFromUserInfo(OLD_DBA));
|
userAccountsDao.addUser(account);
|
||||||
userAccountsDao.addUser(createUserFromUserInfo(OLD_SELF));
|
}
|
||||||
userAccountsDao.addUser(createUserFromUserInfo(OLD_STRANGER));
|
|
||||||
|
|
||||||
individualDao = new IndividualDaoStub();
|
individualDao = new IndividualDaoStub();
|
||||||
|
|
||||||
|
@ -186,7 +205,7 @@ public class AuthenticateTest extends AbstractTestClass {
|
||||||
new HasPermissionFactory(servletContext));
|
new HasPermissionFactory(servletContext));
|
||||||
}
|
}
|
||||||
|
|
||||||
private UserAccount createUserFromUserInfo(UserInfo userInfo) {
|
private static UserAccount createUserFromUserInfo(UserInfo userInfo) {
|
||||||
UserAccount user = new UserAccount();
|
UserAccount user = new UserAccount();
|
||||||
user.setEmailAddress(userInfo.username);
|
user.setEmailAddress(userInfo.username);
|
||||||
user.setUri(userInfo.uri);
|
user.setUri(userInfo.uri);
|
||||||
|
|
Loading…
Add table
Reference in a new issue