/* * Copyright (c) JForum Team. All rights reserved. * * The software in this package is published under the terms of the LGPL * license a copy of which has been included with this distribution in the * license.txt file. * * The JForum Project * http://www.jforum.net */ package net.jforum.sso; import static org.mockito.Mockito.*; import net.jforum.entities.User; import net.jforum.repository.UserRepository; import org.junit.Assert; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.runners.MockitoJUnitRunner; /** * @author Rafael Steil, Jonatan Cloutier */ @RunWith(MockitoJUnitRunner.class) public class DefaultLoginAuthenticatorTestCase { @Mock private UserRepository repository; @InjectMocks private DefaultLoginAuthenticator authenticator; @Test public void userHasActivationKeyButNotActiveExpectFail() { User user = new User(); user.setDeleted(false); user.setActivationKey("some key"); user.setActive(false); when(repository.validateLogin("user", "passwd")).thenReturn(user); User userValidated = authenticator.validateLogin("user", "passwd", null); Assert.assertNull(userValidated); } @Test public void activationKeyNotNullNotActiveExpectFail() { User user = new User(); user.setDeleted(false); user.setActive(false); user.setActivationKey("some key"); when(repository.validateLogin("user", "passwd")).thenReturn(user); User userValidated = authenticator.validateLogin("user", "passwd", null); Assert.assertNull(userValidated); } @Test public void userDeletedExpectFail() { User user = new User(); user.setDeleted(true); when(repository.validateLogin("user", "passwd")).thenReturn(user); User userValidated = authenticator.validateLogin("user", "passwd", null); Assert.assertNull(userValidated); } @Test public void invalidLoginFail() { when(repository.validateLogin("user", "passwd")).thenReturn(null); User userValidated = authenticator.validateLogin("user", "passwd", null); Assert.assertNull(userValidated); } }