Я пытаюсь получить метод класса «updatePaper» из компонента класса «CreatePaper» для передачи в качестве подпорки другому компоненту «CustomTextBox» для тестирования фермента, но я не уверен, как это сделать. Любая помощь приветствуется. В компоненте «CreatePaper» я сейчас экспортирую его как экспорт по умолчанию, где мы определяем соединение с хранилищем Redux.
CreatePaper. js:
updatePaper = (key, value) => {
this.setState({ newPaper });
};
export default connect(mapStateToProps, { addNewPaper })(
CreatePaper
);
CustomTextbox.test. js:
import CreatePaper from '../../../../components/CreatePaper';
import React from 'react';
import Enzyme, { shallow } from 'enzyme';
import { Provider } from 'react-redux';
import toJson from 'enzyme-to-json';
import CustomTextBox from '../../../../components/CustomTextBox.js';
import configureStore from 'redux-mock-store';
import thunk from 'redux-thunk';
import _ from 'lodash';
import { mockStore } from '../../../../setupTests';
import { toBindingIdentifierName } from '@babel/types';
import { SNAPSHOT_VERSION } from 'jest-snapshot/build/utils';
const middlewares = [thunk];
const mockStore = configureStore(middlewares);
const store = mockStore(_.cloneDeep(mockInitialStore));
describe('testing', () => {
test('should render correctly', () => {
const wrapper = Enzyme.mount(
<Provider store={store}>
<CreatePaper />
</Provider>)
const createPaper = wrapper.find('CreatePaper')
console.log(createPaper.updatePaper)
wrapper.setProps({
children:
<CustomTextBox
updateLocal={createPaper.updatePaper}
passedArray={createPaper.state().paperArray}
/>
})
Я не могу показать полный код, так как он закрытый, но этого должно быть достаточно, чтобы получить указать поперек.