UNPKG

box-ui-elements-mlh

Version:
62 lines (55 loc) 2.35 kB
import React from 'react'; import { mount } from 'enzyme'; import { ContentPickerComponent as ContentPicker } from '../ContentPicker'; import UploadDialog from '../../common/upload-dialog'; jest.mock('../../common/header/Header', () => 'mock-header'); jest.mock('../../common/sub-header/SubHeader', () => 'mock-subheader'); jest.mock('../Footer', () => 'mock-footer'); jest.mock('../Content', () => 'mock-content'); jest.mock('../../common/upload-dialog/UploadDialog', () => 'mock-uploaddialog'); jest.mock('../../common/create-folder-dialog/CreateFolderDialog', () => 'mock-createfolderdialog'); describe('elements/content-picker/ContentPicker', () => { let rootElement; const getWrapper = props => mount(<ContentPicker {...props} />, { attachTo: rootElement }); beforeEach(() => { rootElement = document.createElement('div'); rootElement.appendChild(document.createElement('div')); document.body.appendChild(rootElement); }); afterEach(() => { document.body.removeChild(rootElement); }); describe('uploadSuccessHandler()', () => { test('should reload the files list', () => { const wrapper = getWrapper({}); const instance = wrapper.instance(); instance.setState({ currentCollection: { id: '123', }, }); instance.fetchFolder = jest.fn(); instance.uploadSuccessHandler(); expect(instance.fetchFolder).toHaveBeenCalledWith('123', false); }); }); describe('render()', () => { test('should render UploadDialog with contentUploaderProps', () => { const contentUploaderProps = { apiHost: 'https://api.box.com', chunked: false, }; const wrapper = getWrapper({ canUpload: true, contentUploaderProps }); wrapper.setState({ currentCollection: { permissions: { can_upload: true, }, }, }); const uploadDialogElement = wrapper.find(UploadDialog); expect(uploadDialogElement.length).toBe(1); expect(uploadDialogElement.prop('contentUploaderProps')).toEqual(contentUploaderProps); }); }); });