package com.brahalla.Cerberus.unit.model.security; import com.brahalla.Cerberus.model.security.CerberusUser; import java.util.Collection; import java.util.Date; import org.junit.Test; import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.authority.AuthorityUtils; import static org.hamcrest.core.Is.is; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertThat; import static org.junit.Assert.assertTrue; public class CerberusUserTest { private final Long ID = 1L; private final String USERNAME = "username"; private final String PASSWORD = "password"; private final String EMAIL = "user@domain.tld"; private final Date LAST_PASSWORD_RESET = new Date(); private final Collection<? extends GrantedAuthority> AUTHORITIES = AuthorityUtils.commaSeparatedStringToAuthorityList("user,admin"); private final Boolean ACCOUNT_NON_EXPIRED = false; private final Boolean ACCOUNT_NON_LOCKED = false; private final Boolean CREDENTIALS_NON_EXPIRED = false; private final Boolean ENABLED = false; @Test public void callingCerberusUserConstructorWithoutParametersCreatesExpectedObject() { CerberusUser cerberusUser = new CerberusUser(); assertNull(cerberusUser.getId()); assertNull(cerberusUser.getUsername()); assertNull(cerberusUser.getPassword()); assertNull(cerberusUser.getEmail()); assertNull(cerberusUser.getLastPasswordReset()); assertNull(cerberusUser.getAuthorities()); assertTrue(cerberusUser.getAccountNonExpired()); assertTrue(cerberusUser.getAccountNonLocked()); assertTrue(cerberusUser.getCredentialsNonExpired()); assertTrue(cerberusUser.getEnabled()); } @Test public void callingCerberusUserConstructorWithParametersCreatesExpectedObject() { CerberusUser cerberusUser = new CerberusUser(ID, USERNAME, PASSWORD, EMAIL, LAST_PASSWORD_RESET, AUTHORITIES); assertThat(cerberusUser.getId(), is(ID)); assertThat(cerberusUser.getUsername(), is(USERNAME)); assertThat(cerberusUser.getPassword(), is(PASSWORD)); assertThat(cerberusUser.getEmail(), is(EMAIL)); assertThat(cerberusUser.getLastPasswordReset(), is(LAST_PASSWORD_RESET)); assertEquals(cerberusUser.getAuthorities(), AUTHORITIES); assertTrue(cerberusUser.getAccountNonExpired()); assertTrue(cerberusUser.getAccountNonLocked()); assertTrue(cerberusUser.getCredentialsNonExpired()); assertTrue(cerberusUser.getEnabled()); } @Test public void callingCerberusUserGettersAndSettersReturnsExpectedObjects() { CerberusUser cerberusUser = new CerberusUser(); cerberusUser.setId(ID); cerberusUser.setUsername(USERNAME); cerberusUser.setPassword(PASSWORD); cerberusUser.setEmail(EMAIL); cerberusUser.setLastPasswordReset(LAST_PASSWORD_RESET); cerberusUser.setAuthorities(AUTHORITIES); cerberusUser.setAccountNonExpired(ACCOUNT_NON_EXPIRED); cerberusUser.setAccountNonLocked(ACCOUNT_NON_LOCKED); cerberusUser.setCredentialsNonExpired(CREDENTIALS_NON_EXPIRED); cerberusUser.setEnabled(ENABLED); assertThat(cerberusUser.getId(), is(ID)); assertThat(cerberusUser.getUsername(), is(USERNAME)); assertThat(cerberusUser.getPassword(), is(PASSWORD)); assertThat(cerberusUser.getEmail(), is(EMAIL)); assertThat(cerberusUser.getLastPasswordReset(), is(LAST_PASSWORD_RESET)); assertEquals(cerberusUser.getAuthorities(), AUTHORITIES); assertThat(cerberusUser.getAccountNonExpired(), is(ACCOUNT_NON_EXPIRED)); assertThat(cerberusUser.getAccountNonLocked(), is(ACCOUNT_NON_LOCKED)); assertThat(cerberusUser.getCredentialsNonExpired(), is(CREDENTIALS_NON_EXPIRED)); assertThat(cerberusUser.getEnabled(), is(ENABLED)); } }