7352b928da
Co-authored-by: fayazara <fayazara@gmail.com>
75 lines
2.3 KiB
JavaScript
75 lines
2.3 KiB
JavaScript
import {
|
|
emptyMacro,
|
|
resolveActionName,
|
|
resolveLabels,
|
|
resolveTeamIds,
|
|
getFileName,
|
|
resolveAgents,
|
|
} from '../../routes/dashboard/settings/macros/macroHelper';
|
|
import { MACRO_ACTION_TYPES } from '../../routes/dashboard/settings/macros/constants';
|
|
import { teams, labels, files, agents } from './macrosFixtures';
|
|
|
|
describe('#emptyMacro', () => {
|
|
const defaultMacro = {
|
|
name: '',
|
|
actions: [
|
|
{
|
|
action_name: 'assign_team',
|
|
action_params: [],
|
|
},
|
|
],
|
|
visibility: 'global',
|
|
};
|
|
it('returns the default macro', () => {
|
|
expect(emptyMacro).toEqual(defaultMacro);
|
|
});
|
|
});
|
|
|
|
describe('#resolveActionName', () => {
|
|
it('resolve action name from key and return the correct label', () => {
|
|
expect(resolveActionName(MACRO_ACTION_TYPES[0].key)).toEqual(
|
|
MACRO_ACTION_TYPES[0].label
|
|
);
|
|
expect(resolveActionName(MACRO_ACTION_TYPES[1].key)).toEqual(
|
|
MACRO_ACTION_TYPES[1].label
|
|
);
|
|
expect(resolveActionName(MACRO_ACTION_TYPES[1].key)).not.toEqual(
|
|
MACRO_ACTION_TYPES[0].label
|
|
);
|
|
});
|
|
});
|
|
|
|
describe('#resolveTeamIds', () => {
|
|
it('resolves team names from ids, and returns a joined string', () => {
|
|
const resolvedTeams = '⚙️ sales team, 🤷♂️ fayaz';
|
|
expect(resolveTeamIds(teams, [1, 2])).toEqual(resolvedTeams);
|
|
});
|
|
});
|
|
|
|
describe('#resolveLabels', () => {
|
|
it('resolves labels names from ids and returns a joined string', () => {
|
|
const resolvedLabels = 'sales, billing';
|
|
expect(resolveLabels(labels, ['sales', 'billing'])).toEqual(resolvedLabels);
|
|
});
|
|
});
|
|
|
|
describe('#resolveAgents', () => {
|
|
it('resolves agents names from ids and returns a joined string', () => {
|
|
const resolvedAgents = 'John Doe';
|
|
expect(resolveAgents(agents, [1])).toEqual(resolvedAgents);
|
|
});
|
|
});
|
|
|
|
describe('#getFileName', () => {
|
|
it('returns the correct file name from the list of files', () => {
|
|
expect(getFileName(files[0].blob_id, 'send_attachment', files)).toEqual(
|
|
files[0].filename
|
|
);
|
|
expect(getFileName(files[1].blob_id, 'send_attachment', files)).toEqual(
|
|
files[1].filename
|
|
);
|
|
expect(getFileName(files[0].blob_id, 'wrong_action', files)).toEqual('');
|
|
expect(getFileName(null, 'send_attachment', files)).toEqual('');
|
|
expect(getFileName(files[0].blob_id, 'send_attachment', [])).toEqual('');
|
|
});
|
|
});
|