aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Vitaly Takmazov2018-09-25 09:28:30 +0300
committerGravatar Vitaly Takmazov2018-09-25 09:28:30 +0300
commit933e5702864d0babcd9f8cbc1791078f387b24c7 (patch)
tree629e9f06d6b885c848cf888c47268a365fbe6fac
parente0e82d8d33404be43f9bd4422b2c8268f0977b6c (diff)
distinct tags in new message
-rw-r--r--juick-server/src/main/java/com/juick/service/TagServiceImpl.java2
-rw-r--r--juick-server/src/test/java/com/juick/server/tests/ServerTests.java6
2 files changed, 7 insertions, 1 deletions
diff --git a/juick-server/src/main/java/com/juick/service/TagServiceImpl.java b/juick-server/src/main/java/com/juick/service/TagServiceImpl.java
index 524ad32d..3ee21aec 100644
--- a/juick-server/src/main/java/com/juick/service/TagServiceImpl.java
+++ b/juick-server/src/main/java/com/juick/service/TagServiceImpl.java
@@ -214,7 +214,7 @@ public class TagServiceImpl extends BaseJdbcService implements TagService {
return StreamUtils.takeWhile(Arrays.stream(firstLine.split("\\ ")),
t -> !t.equals("*") && t.startsWith("*"))
.map(t -> getTag(t.substring(1), true))
- .collect(Collectors.toList());
+ .distinct().collect(Collectors.toList());
}
@Transactional(readOnly = true)
diff --git a/juick-server/src/test/java/com/juick/server/tests/ServerTests.java b/juick-server/src/test/java/com/juick/server/tests/ServerTests.java
index 75024029..c4915acf 100644
--- a/juick-server/src/test/java/com/juick/server/tests/ServerTests.java
+++ b/juick-server/src/test/java/com/juick/server/tests/ServerTests.java
@@ -1690,4 +1690,10 @@ public class ServerTests {
writer.write(result.getResponse().getContentAsString());
writer.flush();
}
+ @Test
+ public void newMessageShouldNotContainDuplicatedTags() throws Exception {
+ CommandResult result = commandsManager.processCommand(ugnich, "*test *test test", emptyUri);
+ assertThat(result.getNewMessage().isPresent(), is(true));
+ assertThat(result.getNewMessage().get().getTags().size(), is (1));
+ }
}