From d7409c83752022f422bb7f6624fdffeb7bf403ee Mon Sep 17 00:00:00 2001 From: Jose Date: Tue, 7 Aug 2018 01:01:08 +0100 Subject: [PATCH] Remove whitespaces from usernames (#296) (#297) * Remove whitespaces from usernames (#296) Some languages include compound names (spanish and portugese for example) and that breaks usernames validation * Remove noise from my previous commit Accidentally cleaned the entire file... --- src/main/java/com/github/javafaker/Name.java | 5 ++++- src/test/java/com/github/javafaker/NameTest.java | 12 ++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/github/javafaker/Name.java b/src/main/java/com/github/javafaker/Name.java index 756dd4db..87a0c9af 100644 --- a/src/main/java/com/github/javafaker/Name.java +++ b/src/main/java/com/github/javafaker/Name.java @@ -120,10 +120,13 @@ public class Name { * @see Name#lastName() */ public String username() { - return StringUtils.join(new String[]{ + + String username = StringUtils.join(new String[]{ firstName().replaceAll("'", "").toLowerCase(), ".", lastName().replaceAll("'", "").toLowerCase()} ); + + return StringUtils.deleteWhitespace(username); } } diff --git a/src/test/java/com/github/javafaker/NameTest.java b/src/test/java/com/github/javafaker/NameTest.java index 5cc884ee..f219e98a 100644 --- a/src/test/java/com/github/javafaker/NameTest.java +++ b/src/test/java/com/github/javafaker/NameTest.java @@ -4,6 +4,9 @@ import org.junit.Test; import static com.github.javafaker.matchers.MatchesRegularExpression.matchesRegularExpression; import static org.junit.Assert.assertThat; +import static org.mockito.Mockito.doReturn; +import static org.mockito.Mockito.spy; + public class NameTest extends AbstractFakerTest{ @@ -51,4 +54,13 @@ public class NameTest extends AbstractFakerTest{ public void testUsername() { assertThat(faker.name().username(), matchesRegularExpression("^(\\w+)\\.(\\w+)$")); } + + @Test + public void testUsernameWithSpaces() { + final Name name = spy(new Name(faker)); + doReturn("Compound Name").when(name).firstName(); + doReturn(name).when(faker).name(); + assertThat(faker.name().username(), matchesRegularExpression("^(\\w+)\\.(\\w+)$")); + } + }