You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
152 lines
5.1 KiB
152 lines
5.1 KiB
'use strict'
|
|
|
|
import { assert } from 'chai'
|
|
import ConversationsModule from 'src/store/conversations/conversations'
|
|
|
|
describe('Conversations', () => {
|
|
it('should load next page of items', () => {
|
|
const resultItems = []
|
|
const state = {
|
|
items: [
|
|
{
|
|
call_id: '8fe2fa2f-84bc-48be-977d-84984aa5cc29',
|
|
call_type: 'call',
|
|
callee: '43993006',
|
|
caller: '43993004',
|
|
currency: '',
|
|
customer_cost: 0,
|
|
direction: 'out',
|
|
duration: '0:00:00',
|
|
id: 85,
|
|
rating_status: 'ok',
|
|
start_time: '2018-06-21 14:50:00.687',
|
|
status: 'noanswer',
|
|
total_customer_cost: 0,
|
|
type: 'call',
|
|
_links: {
|
|
}
|
|
}
|
|
]
|
|
}
|
|
const data = {
|
|
items: [
|
|
{
|
|
call_id: '8fe2fa2f-84bc-48be-977d-84984aa5cc29',
|
|
call_type: 'call',
|
|
callee: '43993006',
|
|
caller: '43993004',
|
|
currency: '',
|
|
customer_cost: 0,
|
|
direction: 'out',
|
|
duration: '0:00:00',
|
|
id: 85,
|
|
rating_status: 'ok',
|
|
start_time: '2018-06-21 14:50:00.687',
|
|
status: 'noanswer',
|
|
total_customer_cost: 0,
|
|
type: 'call',
|
|
_links: {
|
|
}
|
|
}
|
|
],
|
|
lastPage: 1
|
|
}
|
|
resultItems.push(state.items[0])
|
|
resultItems.push(data.items[0])
|
|
ConversationsModule.mutations.nextPageSucceeded(state, data)
|
|
assert.deepEqual(state.items, resultItems)
|
|
})
|
|
|
|
it('should load reloaded items', () => {
|
|
const state = {
|
|
items: [
|
|
{
|
|
call_id: '8fe2fa2f-84bc-48be-977d-84984aa5cc29',
|
|
call_type: 'call',
|
|
callee: '43993006',
|
|
caller: '43993004',
|
|
currency: '',
|
|
customer_cost: 0,
|
|
direction: 'out',
|
|
duration: '0:00:00',
|
|
id: 85,
|
|
rating_status: 'ok',
|
|
start_time: '2018-06-21 14:50:00.687',
|
|
status: 'noanswer',
|
|
total_customer_cost: 0,
|
|
type: 'call',
|
|
_links: {
|
|
}
|
|
}
|
|
]
|
|
}
|
|
const data = {
|
|
items: [
|
|
{
|
|
call_id: 'd2212956-46cc-4f9d-805d-cf2b5f572726',
|
|
call_type: 'call',
|
|
callee: '43993007',
|
|
caller: '43993004',
|
|
currency: '',
|
|
customer_cost: 0,
|
|
direction: 'out',
|
|
duration: '0:00:00',
|
|
id: 87,
|
|
rating_status: 'ok',
|
|
start_time: '2018-06-21 15:02:41.762',
|
|
status: 'noanswer',
|
|
total_customer_cost: 0,
|
|
type: 'call',
|
|
_links: {
|
|
}
|
|
},
|
|
{
|
|
call_id: '8fe2fa2f-84bc-48be-977d-84984aa5cc29',
|
|
call_type: 'call',
|
|
callee: '43993006',
|
|
caller: '43993004',
|
|
currency: '',
|
|
customer_cost: 0,
|
|
direction: 'out',
|
|
duration: '0:00:00',
|
|
id: 85,
|
|
rating_status: 'ok',
|
|
start_time: '2018-06-21 14:50:00.687',
|
|
status: 'noanswer',
|
|
total_customer_cost: 0,
|
|
type: 'call',
|
|
_links: {
|
|
}
|
|
}
|
|
],
|
|
lastPage: 1
|
|
}
|
|
ConversationsModule.mutations.reloadItemsSucceeded(state, data)
|
|
assert.deepEqual(state.items, data.items)
|
|
})
|
|
|
|
it('should load blocked numbers and mode', () => {
|
|
const state = {
|
|
blockedNumbersIncoming: new Set(),
|
|
blockedModeIncoming: null,
|
|
blockedNumbersOutgoing: new Set(),
|
|
blockedModeOutgoing: null
|
|
}
|
|
const options = {
|
|
blockAnonymous: undefined,
|
|
enabled: undefined,
|
|
list: [
|
|
'123456',
|
|
'555555'
|
|
]
|
|
}
|
|
const listSet = new Set(['123456', '555555'])
|
|
ConversationsModule.mutations.blockedIncomingSucceeded(state, options)
|
|
ConversationsModule.mutations.blockedOutgoingSucceeded(state, options)
|
|
assert.deepEqual(state.blockedNumbersIncoming, listSet)
|
|
assert.equal(state.blockedModeIncoming, 'blacklist')
|
|
assert.deepEqual(state.blockedNumbersOutgoing, listSet)
|
|
assert.equal(state.blockedModeOutgoing, 'blacklist')
|
|
})
|
|
})
|