package uk.ac.ox.zoo.seeg.abraid.mp.publicsite.security; import org.junit.Test; import uk.ac.ox.zoo.seeg.abraid.mp.publicsite.AbstractAuthenticatingTests; import uk.ac.ox.zoo.seeg.abraid.mp.publicsite.domain.PublicSiteUser; import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; /** * Tests the CurrentUserServiceImpl class. * Copyright (c) 2014 University of Oxford */ public class CurrentUserServiceTest extends AbstractAuthenticatingTests { @Test public void getCurrentUserReturnsCorrectAuthorizedUser() throws Exception { // Arrange int expectation = 123; PublicSiteUser user = mock(PublicSiteUser.class); when(user.getId()).thenReturn(expectation); setupCurrentUser(user); CurrentUserService target = new CurrentUserServiceImpl(); // Act Integer result = target.getCurrentUserId(); // Assert assertThat(result).isSameAs(expectation); } @Test public void getCurrentUserReturnsNullForAnonymousUser() throws Exception { // Arrange CurrentUserService target = new CurrentUserServiceImpl(); // Act Integer result = target.getCurrentUserId(); // Assert assertThat(result).isNull(); } }