Модульный тест для чистого метода класса React / JEST / Enzyme - PullRequest
0 голосов
/ 28 апреля 2020
class SomeComponent extends Component {

  /* Extracts file name and returns it */
  getFileName(file_name, id) {
   const display_file_name = file_name.split(id)[1];
   return display_file_name;
  }
}

...

export default connect(
  mapStateToProps,
  mapDispatchToProps
)(SomeComponent);

У меня есть этот компонент выше, который связан с Redux. Я хочу написать тестовый блок для метода getFileName . Я написал, как показано ниже:

test('should return file name extracted from the compound file name string', () => {
      const wrapper = (store) => {
        return mount(
            <Provider store={store}>
                <BrowserRouter >
                    <Route component={SomeComponent} />
                </BrowserRouter>
            </Provider>
        );
      }
      const store = createMockStore();

      let compoundFileName = 'something_18ba56fd3_filename.csv';
      let expectedFileName = 'filename.csv';
      const id = '18ba56fd3';

      const instance = wrapper(store).dive().instance();
      const result = instance.getFileName(compoundFileName, id);

      expect(result).toEqual(expectedFileName);
    });

Получение TypeError: wrapper(...).dive is not a function

Пожалуйста, помогите.

...