mirror of
https://github.com/lingble/chatwoot.git
synced 2025-11-02 20:18:08 +00:00
45 lines
1.1 KiB
JavaScript
45 lines
1.1 KiB
JavaScript
import fileUploadMixin from 'dashboard/mixins/fileUploadMixin';
|
|
import Vue from 'vue';
|
|
|
|
jest.mock('shared/helpers/FileHelper', () => ({
|
|
checkFileSizeLimit: jest.fn(),
|
|
}));
|
|
|
|
jest.mock('activestorage', () => ({
|
|
DirectUpload: jest.fn().mockImplementation(() => ({
|
|
create: jest.fn(),
|
|
})),
|
|
}));
|
|
|
|
describe('FileUploadMixin', () => {
|
|
let vm;
|
|
|
|
beforeEach(() => {
|
|
vm = new Vue(fileUploadMixin);
|
|
vm.isATwilioSMSChannel = false;
|
|
vm.globalConfig = {
|
|
directUploadsEnabled: true,
|
|
};
|
|
vm.accountId = 123;
|
|
vm.currentChat = {
|
|
id: 456,
|
|
};
|
|
vm.currentUser = {
|
|
access_token: 'token',
|
|
};
|
|
});
|
|
|
|
it('should call onDirectFileUpload when direct uploads are enabled', () => {
|
|
vm.onDirectFileUpload = jest.fn();
|
|
vm.onFileUpload({});
|
|
expect(vm.onDirectFileUpload).toHaveBeenCalledWith({});
|
|
});
|
|
|
|
it('should call onIndirectFileUpload when direct uploads are disabled', () => {
|
|
vm.globalConfig.directUploadsEnabled = false;
|
|
vm.onIndirectFileUpload = jest.fn();
|
|
vm.onFileUpload({});
|
|
expect(vm.onIndirectFileUpload).toHaveBeenCalledWith({});
|
|
});
|
|
});
|