Skip to content
Snippets Groups Projects
Commit 24f7046b authored by OZGCloud's avatar OZGCloud
Browse files

OZG-2644 tiny cleanup

parent a598842d
No related branches found
No related tags found
No related merge requests found
......@@ -35,8 +35,12 @@ class ForwardingLandesnetzInfoService {
LOG.info("{} Landesnetz-Infos entries read.", landesnetzInfo.size());
}
public boolean isDomainInLandesnetz(String domain) {
return isLandesnetzIncludingDomain(domain);
public boolean isEmailInLandesnetz(String email) {
return isLandesnetzIncludingDomain(getDomain(email));
}
private String getDomain(String email) {
return email.substring(email.lastIndexOf('@') + 1, email.length());
}
private boolean isLandesnetzIncludingDomain(String emailDomain) {
......
......@@ -32,11 +32,7 @@ class ForwardingPasswordValidator implements ConstraintValidator<ForwardingPassw
}
private boolean isNotInLandesnetz(String email) {
return !landesnetzInfoService.isDomainInLandesnetz(getDomain(email));
}
String getDomain(String email) {
return email.substring(email.lastIndexOf('@') + 1, email.length());
return !landesnetzInfoService.isEmailInLandesnetz(email);
}
boolean isValidPassword(String password) {
......
......@@ -48,8 +48,7 @@ class CommandMapperTest {
@Test
void shouldMapNullPasswordAsEmpty() {
var request = RedirectRequestTestFactory.createBuilder().password(null).build();
var command = mapper.toGrpcRedirectRequest(request);
var command = mapper.toGrpcRedirectRequest(RedirectRequestTestFactory.createBuilder().password(null).build());
assertThat(command.getPassword()).isEqualTo(StringUtils.EMPTY);
}
......
......@@ -4,6 +4,7 @@ import java.util.Arrays;
import java.util.HashSet;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test;
import org.mockito.InjectMocks;
......@@ -22,50 +23,62 @@ class ForwardingLandesnetzInfoServiceTest {
@Mock
private ResourceLoader resourceLoader;
@DisplayName("Is email in landesnetz")
@Nested
class TestIstImLandesnetz {
class TestIstInLandesnetz {
private final String EMAIL_NAME = "testEmailName@";
private final String IN_LANDESNETZ = "itvsh.de";
private final String IN_LANDESNETZ_MIT_PUNKT = ".itvsh.old.de";
private final String IN_LANDESNETZ_WITH_DOTS = ".itvsh.old.de";
@BeforeEach
void initMap() throws Exception {
ReflectionTestUtils.setField(service, "landesnetzInfo", new HashSet<>(Arrays.asList(IN_LANDESNETZ, IN_LANDESNETZ_MIT_PUNKT)));
ReflectionTestUtils.setField(service, "landesnetzInfo", new HashSet<>(Arrays.asList(IN_LANDESNETZ, IN_LANDESNETZ_WITH_DOTS)));
}
@DisplayName("validate with email in Landesnetz")
@Nested
class TestExactMatching {
class TestWithMatchingEmail {
@Test
void shouldReturnTrue() {
var result = service.isDomainInLandesnetz(IN_LANDESNETZ);
void shouldReturnTrueWithSingleDot() {
var result = service.isEmailInLandesnetz(EMAIL_NAME + IN_LANDESNETZ);
assertThat(result).isTrue();
}
@Test
void shouldReturnFalse() {
var result = service.isDomainInLandesnetz("me.gmx.de");
void shouldReturnTrueWithMultipleDots() {
var result = service.isEmailInLandesnetz(EMAIL_NAME + IN_LANDESNETZ_WITH_DOTS);
assertThat(result).isFalse();
assertThat(result).isTrue();
}
@Test
void shouldReturnTrueByConsideringJustTheEnd() {
var result = service.isEmailInLandesnetz(EMAIL_NAME + "me" + IN_LANDESNETZ_WITH_DOTS);
assertThat(result).isTrue();
}
}
@DisplayName("validate with email NOT in Landesnetz")
@Nested
class TestEndsWithMatching {
@Test
void shouldReturnFalse() {
var result = service.isDomainInLandesnetz("me" + IN_LANDESNETZ_MIT_PUNKT + ".nicht.gueltig.de");
void shouldReturnFalseOnWrongDomain() {
var result = service.isEmailInLandesnetz(EMAIL_NAME + "me.gmx.de");
assertThat(result).isFalse();
}
@Test
void shouldReturnTrue() {
var result = service.isDomainInLandesnetz("me" + IN_LANDESNETZ_MIT_PUNKT);
void shouldReturnFalseOnConsideringJustTheEnd() {
var result = service.isEmailInLandesnetz(EMAIL_NAME + "me" + IN_LANDESNETZ_WITH_DOTS + ".nicht.gueltig.de");
assertThat(result).isTrue();
assertThat(result).isFalse();
}
}
}
......
......@@ -52,7 +52,7 @@ class ForwardingPasswordValidatorTest {
@BeforeEach
void mock() {
when(landesnetzInfoService.isDomainInLandesnetz(anyString())).thenReturn(true);
when(landesnetzInfoService.isEmailInLandesnetz(anyString())).thenReturn(true);
}
@Test
......@@ -72,7 +72,7 @@ class ForwardingPasswordValidatorTest {
@BeforeEach
void mock() {
when(landesnetzInfoService.isDomainInLandesnetz(anyString())).thenReturn(false);
when(landesnetzInfoService.isEmailInLandesnetz(anyString())).thenReturn(false);
doNothing().when(validator).prepareConstraint(any());
}
......@@ -120,16 +120,4 @@ class ForwardingPasswordValidatorTest {
}
}
}
@DisplayName("Get domain")
@Nested
class TestGetDomain {
@Test
void shouldReturnDomainFromEmail() {
var domain = validator.getDomain("snoopy@charlies-home.com");
assertThat(domain).isEqualTo("charlies-home.com");
}
}
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment