Тестирование Chart.js с помощью Jest / Enzyme - Не удалось создать диаграмму: невозможно получить контекст из данного элемента - PullRequest
0 голосов
/ 28 декабря 2018

Мой тест проходит нормально, но я получаю следующую ошибку.

  console.error node_modules/chart.js/src/core/core.controller.js:127
  Failed to create chart: can't acquire context from the given item

Я посмотрел вокруг, и ближайший ответ, который я могу найти, упомянут здесь: https://github.com/chartjs/Chart.js/issues/3696, но выглядиткак будто ошибка является преднамеренным способом изящного сбоя без провала тестов.

Я использую Jest / Enzyme для написания теста, который проверяет, какие опции передаются в мой компонент диаграммы.

  it('xAxis set to false', () => {
    const wrapper = mount(<Chart xAxis='false' chart={parentState.chart} />);
    const BarChart = wrapper.find('Bar');

    console.log(BarChart.props().options);
    expect(BarChart.props().options.scales.xAxes[0].display).toEqual(false);

    wrapper.unmount();
  });

1 Ответ

0 голосов
/ 28 декабря 2018

Я всегда чувствую себя довольно глупо, когда я провожу день, исследуя свой вопрос, прежде чем задавать его, а потом выясняю это самостоятельно через 15 минут ...

Вместо того, чтобы удалить это, я собираюсьопубликовать ответ для всех, кто может иметь аналогичную проблемуЯ понял, что использую обертку для chart.js, react-chartjs-2, поэтому я искал на их github и, конечно же, кто-то уже опубликовал точный ответ на мой вопрос.https://github.com/jerairrest/react-chartjs-2/issues/155

Добавление следующего макета в мой файл setup-jest.js устраняет ошибки консоли, которые я получаю.

jest.mock('react-chartjs-2', () => ({
  Bar: () => null
}));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...