@Override public void saveMessage(String userName, Message message) { messageStore.saveMessage(userName, message); } }
@Override public void sendMessage(String userName, Message message) { // We need to set the id to null to make sure each user gets a unique id. Otherwise an id // suitable for a first user gets generated and is then used for everyone, possible overwriting // already existing messages for some users. message.setId(null); messageStore.saveMessage(userName, message); sendMessageSentEvent(userName, message); }
@Test public void getMessageAmounForUserWithAtInName() throws Exception { //GIVEN messageStore.saveMessage(USER_WITH_AT, error); messageStore.saveMessage(USER_WITH_AT, warning); messageStore.saveMessage(USER_WITH_AT, info); // WHEN long amountWithoutTypeSpecified = messageStore.getMessageAmount(USER_WITH_AT, Lists.<MessageType>newArrayList()); // THEN assertEquals(3, amountWithoutTypeSpecified); }
@Test public void getNumberOfUnclearedMessagesForUserWithAtInName() throws Exception { //GIVEN messageStore.saveMessage(USER_WITH_AT, error); messageStore.saveMessage(USER_WITH_AT, warning); messageStore.saveMessage(USER_WITH_AT, info); // WHEN int count = messageStore.getNumberOfUnclearedMessagesForUser(USER_WITH_AT); // THEN assertEquals(3, count); }
@Override public void clearMessage(final String userName, final String messageId) { final Message message = messageStore.findMessageById(userName, messageId); if (message != null && !message.isCleared()) { message.setCleared(true); messageStore.saveMessage(userName, message); sendMessageClearedEvent(userName, message); } }
@Test public void fetchMessagesForUserWithAtInName() throws Exception { //GIVEN messageStore.saveMessage(USER_WITH_AT, error); messageStore.saveMessage(USER_WITH_AT, warning); messageStore.saveMessage(USER_WITH_AT, info); // WHEN final List<Message> allMessages = messageStore.getMessages(USER_WITH_AT, Lists.<MessageType>newArrayList(), Maps.<String, Boolean>newHashMap(), 3, 0); // THEN assertEquals(3, allMessages.size()); assertThat(allMessages, containsMessages(error, warning, info)); }
@Test public void getNumberOfUnclearedMessagesForUser() throws Exception { //GIVEN error.setCleared(false); warning.setCleared(true); info.setCleared(true); messageStore.saveMessage(USER, error); messageStore.saveMessage(USER, warning); messageStore.saveMessage(USER, info); // WHEN int count = messageStore.getNumberOfUnclearedMessagesForUser(USER); // THEN assertEquals(1, count); }
@Override @Before public void setUp() throws Exception { super.setUp(); final RepositoryManager repositoryManager = Components.getComponent(RepositoryManager.class); repositoryManager.loadWorkspace(REPOSITORY, WORKSPACE); repositoryManager.getRepositoryProvider(REPOSITORY).registerNodeTypes(getClass().getResourceAsStream(NODE_TYPES)); messageStore = new MessageStore(); error = createMessage("1", MessageType.ERROR); warning = createMessage("2", MessageType.WARNING); info = createMessage("3", MessageType.INFO); messageStore.saveMessage(USER, error); messageStore.saveMessage(USER, warning); messageStore.saveMessage(USER, info); }
@Test public void testFindMessageById() throws Exception { // GIVEN final String id = "1234"; final MockNode messageNode = createEmptyMessageMockNode(id); final String userName = MgnlContext.getUser().getName(); boolean saved = store.saveMessage(userName, store.unmarshallMessage(messageNode)); assertTrue(saved); // WHEN Message result = store.findMessageById(userName, id); // THEN assertNotNull(result); }
@Test public void testSaveMessage() throws Exception { // GIVEN final String id = "1234"; final MockNode messageNode = createEmptyMessageMockNode(id); final String userName = MgnlContext.getUser().getName(); // WHEN boolean saved = store.saveMessage(userName, store.unmarshallMessage(messageNode)); // THEN assertTrue(saved); Message result = store.findMessageById(userName, id); assertNotNull(result); }
@Test public void testRemoveMessageById() throws Exception { // GIVEN final String id = "1234"; final MockNode messageNode = createEmptyMessageMockNode(id); final String userName = MgnlContext.getUser().getName(); store.saveMessage(userName, store.unmarshallMessage(messageNode)); Message result = store.findMessageById(userName, id); assertNotNull(result); // WHEN store.removeMessageById(userName, id); // THEN result = store.findMessageById(userName, id); assertNull(result); }