From 63078edb624a0379d738e44788a17940345f0637 Mon Sep 17 00:00:00 2001 From: j2blake Date: Mon, 6 Jun 2011 14:15:57 +0000 Subject: [PATCH] NIHVIVO-2279 Fix unit test. --- .../controller/edit/AuthenticateTest.java | 14 ++++ .../mannlib/vitro/webapp/dao/UserDaoStub.java | 83 +++++++++++++++++++ .../webapp/dao/WebappDaoFactoryStub.java | 20 +++-- 3 files changed, 109 insertions(+), 8 deletions(-) create mode 100644 webapp/test/stubs/edu/cornell/mannlib/vitro/webapp/dao/UserDaoStub.java diff --git a/webapp/test/edu/cornell/mannlib/vitro/webapp/controller/edit/AuthenticateTest.java b/webapp/test/edu/cornell/mannlib/vitro/webapp/controller/edit/AuthenticateTest.java index 1e5bc810f..3c220d823 100644 --- a/webapp/test/edu/cornell/mannlib/vitro/webapp/controller/edit/AuthenticateTest.java +++ b/webapp/test/edu/cornell/mannlib/vitro/webapp/controller/edit/AuthenticateTest.java @@ -20,6 +20,8 @@ import org.junit.Before; import org.junit.Ignore; import org.junit.Test; +import stubs.edu.cornell.mannlib.vitro.webapp.dao.UserDaoStub; +import stubs.edu.cornell.mannlib.vitro.webapp.dao.WebappDaoFactoryStub; import stubs.javax.servlet.ServletConfigStub; import stubs.javax.servlet.ServletContextStub; import stubs.javax.servlet.http.HttpServletRequestStub; @@ -40,6 +42,8 @@ public class AuthenticateTest extends AbstractTestClass { private AuthenticatorStub authenticator; private ServletContextStub servletContext; + private WebappDaoFactoryStub webappDaoFactory; + private UserDaoStub userDao; private ServletConfigStub servletConfig; private HttpSessionStub session; private HttpServletRequestStub request; @@ -110,7 +114,17 @@ public class AuthenticateTest extends AbstractTestClass { authenticator.setAssociatedUri(OLD_SELF.username, "old_self_associated_uri"); + userDao = new UserDaoStub(); + userDao.addUser(createUserFromUserInfo(NEW_DBA)); + userDao.addUser(createUserFromUserInfo(OLD_DBA)); + userDao.addUser(createUserFromUserInfo(OLD_SELF)); + userDao.addUser(createUserFromUserInfo(OLD_STRANGER)); + + webappDaoFactory = new WebappDaoFactoryStub(); + webappDaoFactory.setUserDao(userDao); + servletContext = new ServletContextStub(); + servletContext.setAttribute("webappDaoFactory", webappDaoFactory); servletConfig = new ServletConfigStub(); servletConfig.setServletContext(servletContext); diff --git a/webapp/test/stubs/edu/cornell/mannlib/vitro/webapp/dao/UserDaoStub.java b/webapp/test/stubs/edu/cornell/mannlib/vitro/webapp/dao/UserDaoStub.java new file mode 100644 index 000000000..d3ce6c3ee --- /dev/null +++ b/webapp/test/stubs/edu/cornell/mannlib/vitro/webapp/dao/UserDaoStub.java @@ -0,0 +1,83 @@ +/* $This file is distributed under the terms of the license in /doc/license.txt$ */ + +package stubs.edu.cornell.mannlib.vitro.webapp.dao; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import edu.cornell.mannlib.vitro.webapp.beans.User; +import edu.cornell.mannlib.vitro.webapp.dao.UserDao; + +/** + * TODO + */ +public class UserDaoStub implements UserDao { + // ---------------------------------------------------------------------- + // Stub infrastructure + // ---------------------------------------------------------------------- + + private final Map userByUriMap = new HashMap(); + + public void addUser(User user) { + userByUriMap.put(user.getURI(), user); + } + + // ---------------------------------------------------------------------- + // Stub methods + // ---------------------------------------------------------------------- + + @Override + public User getUserByURI(String URI) { + return userByUriMap.get(URI); + } + + // ---------------------------------------------------------------------- + // Un-implemented methods + // ---------------------------------------------------------------------- + + @Override + public User getUserByUsername(String username) { + throw new RuntimeException( + "UserDaoStub.getUserByUsername() not implemented."); + } + + @Override + public List getAllUsers() { + throw new RuntimeException("UserDaoStub.getAllUsers() not implemented."); + } + + @Override + public void updateUser(User user) { + throw new RuntimeException("UserDaoStub.updateUser() not implemented."); + } + + @Override + public String insertUser(User user) { + throw new RuntimeException("UserDaoStub.insertUser() not implemented."); + } + + @Override + public void deleteUser(User user) { + throw new RuntimeException("UserDaoStub.deleteUser() not implemented."); + } + + @Override + public List getIndividualsUserMayEditAs(String userURI) { + throw new RuntimeException( + "UserDaoStub.getIndividualsUserMayEditAs() not implemented."); + } + + @Override + public List getUserAccountEmails() { + throw new RuntimeException( + "UserDaoStub.getUserAccountEmails() not implemented."); + } + + @Override + public String getUserEmailAddress(String userURI) { + throw new RuntimeException( + "UserDaoStub.getUserEmailAddress() not implemented."); + } + +} diff --git a/webapp/test/stubs/edu/cornell/mannlib/vitro/webapp/dao/WebappDaoFactoryStub.java b/webapp/test/stubs/edu/cornell/mannlib/vitro/webapp/dao/WebappDaoFactoryStub.java index 9cf22d62f..13277aca5 100644 --- a/webapp/test/stubs/edu/cornell/mannlib/vitro/webapp/dao/WebappDaoFactoryStub.java +++ b/webapp/test/stubs/edu/cornell/mannlib/vitro/webapp/dao/WebappDaoFactoryStub.java @@ -12,7 +12,6 @@ import edu.cornell.mannlib.vitro.webapp.dao.DataPropertyDao; import edu.cornell.mannlib.vitro.webapp.dao.DataPropertyStatementDao; import edu.cornell.mannlib.vitro.webapp.dao.DatatypeDao; import edu.cornell.mannlib.vitro.webapp.dao.DisplayModelDao; -import edu.cornell.mannlib.vitro.webapp.dao.FlagDao; import edu.cornell.mannlib.vitro.webapp.dao.IndividualDao; import edu.cornell.mannlib.vitro.webapp.dao.KeywordDao; import edu.cornell.mannlib.vitro.webapp.dao.KeywordIndividualRelationDao; @@ -59,6 +58,12 @@ public class WebappDaoFactoryStub implements WebappDaoFactory { this.objectPropertyDao = objectPropertyDao; } + // TODO This goes away when the UserAccounts stuff is fully implemented -- jb + private UserDao userDao; + public void setUserDao(UserDao userDao) { + this.userDao = userDao; + } + // ---------------------------------------------------------------------- // Stub methods // ---------------------------------------------------------------------- @@ -78,6 +83,12 @@ public class WebappDaoFactoryStub implements WebappDaoFactory { return this.objectPropertyDao; } + // TODO This goes away when the UserAccounts stuff is fully implemented -- jb + @Override + public UserDao getUserDao() { + return this.userDao; + } + // ---------------------------------------------------------------------- // Un-implemented methods // ---------------------------------------------------------------------- @@ -214,13 +225,6 @@ public class WebappDaoFactoryStub implements WebappDaoFactory { "WebappDaoFactory.getLinktypeDao() not implemented."); } - // TODO This goes away when the UserAccounts stuff is fully implemented -- jb - @Override - public UserDao getUserDao() { - throw new RuntimeException( - "WebappDaoFactory.getUserDao() not implemented."); - } - @Override public UserAccountsDao getUserAccountsDao() { throw new RuntimeException(