From 24f7046b04ed16c9be555611176e6a9b8fd3304b Mon Sep 17 00:00:00 2001 From: OZGCloud <ozgcloud@mgm-tp.com> Date: Wed, 6 Jul 2022 18:36:55 +0200 Subject: [PATCH] OZG-2644 tiny cleanup --- .../ForwardingLandesnetzInfoService.java | 8 +++- .../ForwardingPasswordValidator.java | 6 +-- .../common/command/CommandMapperTest.java | 3 +- .../ForwardingLandesnetzInfoServiceTest.java | 41 ++++++++++++------- .../ForwardingPasswordValidatorTest.java | 16 +------- 5 files changed, 37 insertions(+), 37 deletions(-) diff --git a/goofy-server/src/main/java/de/itvsh/goofy/vorgang/forwarding/ForwardingLandesnetzInfoService.java b/goofy-server/src/main/java/de/itvsh/goofy/vorgang/forwarding/ForwardingLandesnetzInfoService.java index 32a35ea809..f78af5bd04 100644 --- a/goofy-server/src/main/java/de/itvsh/goofy/vorgang/forwarding/ForwardingLandesnetzInfoService.java +++ b/goofy-server/src/main/java/de/itvsh/goofy/vorgang/forwarding/ForwardingLandesnetzInfoService.java @@ -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) { diff --git a/goofy-server/src/main/java/de/itvsh/goofy/vorgang/forwarding/ForwardingPasswordValidator.java b/goofy-server/src/main/java/de/itvsh/goofy/vorgang/forwarding/ForwardingPasswordValidator.java index bfd35bee71..43a4954799 100644 --- a/goofy-server/src/main/java/de/itvsh/goofy/vorgang/forwarding/ForwardingPasswordValidator.java +++ b/goofy-server/src/main/java/de/itvsh/goofy/vorgang/forwarding/ForwardingPasswordValidator.java @@ -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) { diff --git a/goofy-server/src/test/java/de/itvsh/goofy/common/command/CommandMapperTest.java b/goofy-server/src/test/java/de/itvsh/goofy/common/command/CommandMapperTest.java index 199341b605..29864a467f 100644 --- a/goofy-server/src/test/java/de/itvsh/goofy/common/command/CommandMapperTest.java +++ b/goofy-server/src/test/java/de/itvsh/goofy/common/command/CommandMapperTest.java @@ -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); } diff --git a/goofy-server/src/test/java/de/itvsh/goofy/vorgang/forwarding/ForwardingLandesnetzInfoServiceTest.java b/goofy-server/src/test/java/de/itvsh/goofy/vorgang/forwarding/ForwardingLandesnetzInfoServiceTest.java index 26436350d1..e8a8b13bb4 100644 --- a/goofy-server/src/test/java/de/itvsh/goofy/vorgang/forwarding/ForwardingLandesnetzInfoServiceTest.java +++ b/goofy-server/src/test/java/de/itvsh/goofy/vorgang/forwarding/ForwardingLandesnetzInfoServiceTest.java @@ -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(); } } } diff --git a/goofy-server/src/test/java/de/itvsh/goofy/vorgang/forwarding/ForwardingPasswordValidatorTest.java b/goofy-server/src/test/java/de/itvsh/goofy/vorgang/forwarding/ForwardingPasswordValidatorTest.java index 895bc2cfdc..7b270e631e 100644 --- a/goofy-server/src/test/java/de/itvsh/goofy/vorgang/forwarding/ForwardingPasswordValidatorTest.java +++ b/goofy-server/src/test/java/de/itvsh/goofy/vorgang/forwarding/ForwardingPasswordValidatorTest.java @@ -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 -- GitLab