This is an automated email from the ASF dual-hosted git repository. btellier pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/james-project.git
commit 61cbd4664ead1f7b8b42ea029d0a5cbb6dfbdf5f Author: Rene Cordier <rcord...@linagora.com> AuthorDate: Thu Nov 7 14:41:38 2019 +0700 [Refactoring] Parameterized MailAddress creation tests --- core/pom.xml | 5 + .../org/apache/james/core/MailAddressTest.java | 121 ++++++++++----------- 2 files changed, 65 insertions(+), 61 deletions(-) diff --git a/core/pom.xml b/core/pom.xml index e8035f4..bde5d28 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -66,6 +66,11 @@ <artifactId>commons-io</artifactId> </dependency> <dependency> + <groupId>org.junit.jupiter</groupId> + <artifactId>junit-jupiter-params</artifactId> + <scope>test</scope> + </dependency> + <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> </dependency> diff --git a/core/src/test/java/org/apache/james/core/MailAddressTest.java b/core/src/test/java/org/apache/james/core/MailAddressTest.java index 0817587..ff1ccac 100644 --- a/core/src/test/java/org/apache/james/core/MailAddressTest.java +++ b/core/src/test/java/org/apache/james/core/MailAddressTest.java @@ -20,13 +20,18 @@ package org.apache.james.core; import static org.assertj.core.api.Assertions.assertThat; -import static org.assertj.core.api.Fail.fail; +import static org.assertj.core.api.Assertions.assertThatCode; + +import java.util.stream.Stream; import javax.mail.internet.AddressException; import javax.mail.internet.InternetAddress; import org.assertj.core.api.Assertions; import org.junit.jupiter.api.Test; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.Arguments; +import org.junit.jupiter.params.provider.MethodSource; import nl.jqno.equalsverifier.EqualsVerifier; @@ -37,47 +42,51 @@ class MailAddressTest { private static final String GOOD_ADDRESS = "server-dev@james.apache.org"; private static final Domain GOOD_DOMAIN = Domain.of("james.apache.org"); - private static final String[] GOOD_ADDRESSES = { - GOOD_ADDRESS, - GOOD_QUOTED_LOCAL_PART, - "server-...@james-apache.org", - "server-dev@[127.0.0.1]", - "server-dev@#123", - "server-dev@#123.apache.org", - "server....@james.apache.org", - "\\.server-dev@james.apache.org", - "server-dev\\.@james.apache.org", + private static Stream<Arguments> goodAddresses() { + return Stream.of( + GOOD_ADDRESS, + GOOD_QUOTED_LOCAL_PART, + "server-...@james-apache.org", + "server-dev@[127.0.0.1]", + "server-dev@#123", + "server-dev@#123.apache.org", + "server....@james.apache.org", + "\\.server-dev@james.apache.org", + "server-dev\\.@james.apache.org") + .map(Arguments::of); }; - private static final String[] BAD_ADDRESSES = { - "", - "server-dev", - "server-dev@", - "[]", - "server-dev@[]", - "server-dev@#", - "quoted local-p...@james.apache.org", - "quoted@local-p...@james.apache.org", - "local-pa...@james.apache.org", - ".local-p...@james.apache.org", - "local-p...@.james.apache.org", - "local-p...@james.apache.org.", - "local-p...@james.apache..org", - "server-...@-james.apache.org", - "server-dev@james.apache.org-", - "server-dev@#james.apache.org", - "server-dev@#123james.apache.org", - "server-dev@#-123.james.apache.org", - "server-dev@james. apache.org", - "server-dev@james\\.apache.org", - "server-dev@[300.0.0.1]", - "server-dev@[127.0.1]", - "server-dev@[0127.0.0.1]", - "server-dev@[127.0.1.1a]", - "server-dev@[127\\.0.1.1]", - "server-dev@[127.0.1.1.1]", - "server-dev@[127.0.1.-1]" - }; + private static Stream<Arguments> badAddresses() { + return Stream.of( + "", + "server-dev", + "server-dev@", + "[]", + "server-dev@[]", + "server-dev@#", + "quoted local-p...@james.apache.org", + "quoted@local-p...@james.apache.org", + "local-pa...@james.apache.org", + ".local-p...@james.apache.org", + "local-p...@.james.apache.org", + "local-p...@james.apache.org.", + "local-p...@james.apache..org", + "server-...@-james.apache.org", + "server-dev@james.apache.org-", + "server-dev@#james.apache.org", + "server-dev@#123james.apache.org", + "server-dev@#-123.james.apache.org", + "server-dev@james. apache.org", + "server-dev@james\\.apache.org", + "server-dev@[300.0.0.1]", + "server-dev@[127.0.1]", + "server-dev@[0127.0.0.1]", + "server-dev@[127.0.1.1a]", + "server-dev@[127\\.0.1.1]", + "server-dev@[127.0.1.1.1]", + "server-dev@[127.0.1.-1]") + .map(Arguments::of); + } /** * Test method for {@link MailAddress#hashCode()}. @@ -91,28 +100,18 @@ class MailAddressTest { assertThat(a.hashCode()).isEqualTo(b.hashCode()); } - /** - * Test method for {@link MailAddress#MailAddress(java.lang.String)}. - * - * @throws AddressException - */ - @Test - void testMailAddressString() throws AddressException { - MailAddress a = new MailAddress(GOOD_ADDRESS); - assertThat(a.toString()).isEqualTo(GOOD_ADDRESS); - - for (String goodAddress : GOOD_ADDRESSES) { - try { - a = new MailAddress(goodAddress); - } catch (AddressException e) { - fail(e.getMessage()); - } - } + @ParameterizedTest + @MethodSource("goodAddresses") + void testGoodMailAddressString(String mailAddress) { + assertThatCode(() -> new MailAddress(mailAddress)) + .doesNotThrowAnyException(); + } - for (String badAddress : BAD_ADDRESSES) { - Assertions.assertThatThrownBy(() -> new MailAddress(badAddress)) - .isInstanceOf(AddressException.class); - } + @ParameterizedTest + @MethodSource("badAddresses") + void testBadMailAddressString(String mailAddress) { + Assertions.assertThatThrownBy(() -> new MailAddress(mailAddress)) + .isInstanceOf(AddressException.class); } /** --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org