use of com.fanap.podchat.requestobject.RequestMessage in project pod-chat-android-sdk by FanapSoft.
the class ChatTestIntegration method setHashTagTest.
@Test
@LargeTest
public void setHashTagTest() {
ChatListener historyListeners = new ChatListener() {
@Override
public void onGetHistory(String content, ChatResponse<ResultHistory> history) {
System.out.println("onGetHistory: ");
Logger.json(history.getJson());
Assert.assertTrue(true);
resumeProcess();
}
@Override
public void onSent(String content, ChatResponse<ResultMessage> response) {
System.out.println("onSent: ");
Logger.json(response.getJson());
Assert.assertTrue(true);
resumeProcess();
}
};
chat.addListener(historyListeners);
RequestMessage requestMessage = new RequestMessage.Builder("#android fragment", 8085).build();
presenter.sendTextMessage(requestMessage, null);
pauseProcess();
}
use of com.fanap.podchat.requestobject.RequestMessage in project pod-chat-android-sdk by FanapSoft.
the class TextMessagesQueueTest method sendMessageToThread.
@Test
public void sendMessageToThread() {
populateThreadsListFromServerOnly();
assert threads.size() > 0;
Thread thread = threads.get(0);
ChatListener mTestListener = Mockito.mock(ChatListener.class);
chat.setListener(mTestListener);
RequestMessage request = new RequestMessage.Builder("Android Test " + new Date(), thread.getId()).messageType(TextMessageType.Constants.TEXT).build();
chat.sendTextMessage(request, null);
Mockito.verify(mTestListener, Mockito.after(2000).atLeastOnce()).onNewMessage(Mockito.any(), Mockito.any());
sleep(2000);
}
use of com.fanap.podchat.requestobject.RequestMessage in project pod-chat-android-sdk by FanapSoft.
the class TextMessagesQueueTest method checkSendingQueue.
@Test
public void checkSendingQueue() {
populateThreadsListFromServerOnly();
assert threads.size() > 0;
Thread thread = threads.get(0);
ChatListener mTestListener = Mockito.mock(ChatListener.class);
chat.setListener(mTestListener);
chat.closeChat();
sleep(2000);
Assert.assertNotEquals(chat.getChatState(), CHAT_READY);
RequestMessage request = new RequestMessage.Builder("Android Test " + new Date(), thread.getId()).messageType(TextMessageType.Constants.TEXT).build();
String uniqueId = chat.sendTextMessage(request, null);
List<SendingQueueCache> sendQ = chat.getSendingQ();
Assert.assertTrue(sendQ.stream().anyMatch(sendingQueueCache -> sendingQueueCache.getUniqueId().equals(uniqueId)));
}
use of com.fanap.podchat.requestobject.RequestMessage in project pod-chat-android-sdk by FanapSoft.
the class TextMessagesQueueTest method banUserScenario.
@Test
public void banUserScenario() {
populateThreadsListFromServerOnly();
assert threads.size() > 0;
Thread thread = threads.get(0);
final boolean[] isBanned = { false };
ChatListener mTestListener = new ChatListener() {
@Override
public void onError(String content, ErrorOutPut error) {
if (error.getErrorCode() == 208) {
isBanned[0] = true;
}
}
};
chat.setListener(mTestListener);
int counter = 0;
while (!isBanned[0]) {
counter++;
RequestMessage request = new RequestMessage.Builder("Ban me i'm the " + counter + "th message", thread.getId()).messageType(TextMessageType.Constants.TEXT).build();
chat.sendTextMessage(request, null);
}
RequestMessage request = new RequestMessage.Builder("Ok! i'm ban now. but i'll be send after 60 000 milli second is passed", thread.getId()).messageType(TextMessageType.Constants.TEXT).build();
chat.sendTextMessage(request, null);
Assert.assertTrue(chat.getWaitingQ().size() > 0);
}
use of com.fanap.podchat.requestobject.RequestMessage in project pod-chat-android-sdk by FanapSoft.
the class ThreadCacheTest method sendMessageAndDelete.
public void sendMessageAndDelete() {
populateThreadsFromServer();
Collections.shuffle(threadsInServer);
Thread thread = threadsInServer.get(0);
Assert.assertNotNull(thread);
ArrayList<Long> msgIds = new ArrayList<>();
// send new message
chatListeners = new ChatListener() {
@Override
public void onNewMessage(String content, ChatResponse<ResultNewMessage> response) {
resumeProcess();
msgIds.add(response.getResult().getMessageVO().getId());
System.out.println("new message sent -> msg : " + content);
chat.removeListener(chatListeners);
}
@Override
public void onError(String content, ErrorOutPut error) {
resumeProcess();
System.out.println("Error: " + content);
Assert.assertEquals(0, 1);
chat.removeListener(chatListeners);
}
};
chat.addListener(chatListeners);
RequestMessage request = new RequestMessage.Builder("Message for test delete :" + thread.getId(), thread.getId()).messageType(TextMessageType.Constants.TEXT).build();
chat.sendTextMessage(request, null);
pauseProcess();
// delete last message
chatListeners = new ChatListener() {
@Override
public void onDeleteMessage(String content, ChatResponse<ResultDeleteMessage> response) {
resumeProcess();
System.out.println("Deleted: " + content);
chat.removeListener(chatListeners);
}
@Override
public void onError(String content, ErrorOutPut error) {
resumeProcess();
System.out.println("Error: " + content);
Assert.assertEquals(0, 1);
chat.removeListener(chatListeners);
}
};
chat.addListener(chatListeners);
RequestDeleteMessage requestDeleteMessage = new RequestDeleteMessage.Builder().messageIds(msgIds).deleteForAll(true).build();
presenter.deleteMessage(requestDeleteMessage, null);
pauseProcess();
}
Aggregations