[Enhancement] Fetch previous messages in the conversation (#355)

* Fetch previous messages in the conversation

* Add specs for conversation store

* Fix codeclimate issues

* Exclude specs folder

* Exclude globally

* Fix path in exclude patterns

* Add endPoints spec

* Add snapshots for Spinner

* Add specs for actions
This commit is contained in:
Pranav Raj S 2019-12-11 20:57:06 +05:30 committed by Sojan Jose
parent 1005b9e227
commit 2b41e91768
17 changed files with 406 additions and 84 deletions

View file

@ -7,9 +7,9 @@ const sendMessageAPI = async content => {
return result;
};
const getConversationAPI = async conversationId => {
const urlData = endPoints.getConversation(conversationId);
const result = await API.get(urlData.url);
const getConversationAPI = async ({ before }) => {
const urlData = endPoints.getConversation({ before });
const result = await API.get(urlData.url, { params: urlData.params });
return result;
};

View file

@ -7,8 +7,9 @@ const sendMessage = content => ({
},
});
const getConversation = () => ({
const getConversation = ({ before }) => ({
url: `/api/v1/widget/messages${window.location.search}`,
params: { before },
});
export default {

View file

@ -0,0 +1,25 @@
import endPoints from '../endPoints';
describe('#sendMessage', () => {
it('returns correct payload', () => {
expect(endPoints.sendMessage('hello')).toEqual({
url: `/api/v1/widget/messages`,
params: {
message: {
content: 'hello',
},
},
});
});
});
describe('#getConversation', () => {
it('returns correct payload', () => {
expect(endPoints.getConversation({ before: 123 })).toEqual({
url: `/api/v1/widget/messages`,
params: {
before: 123,
},
});
});
});