Я получаю эту ошибку при передаче элемента React в функцию 'mount':
it("Book - move book to a shelf should work", () => {
let test = (<Book book={book} />);
let component = mount(test);
const select = component.find("select").first();
expect(select).toBeDefined();
Однако, если я удалю переменную и передам элемент непосредственно методу, это сработает.
it("Book - move book to a shelf should work", () => {
let component = mount(<Book book={book} />);
const select = component.find("select").first();
expect(select).toBeDefined();
Чем они отличаются?
ОБНОВЛЕНИЕ: По какой-то причине этот метод (renderer.create от Jest) не жалуется на это:
let component = renderer.create(<Book onMoveBook={onMoveBook} book={book} />);
const tree = component.toJSON(); // Works fine.
ТакжеУдивительно, но преобразование переменной в функцию и передача ее в React.createElement сработало:
var test = React.createElement(() => <Book onMoveBook={onMoveBook} book={book} />);
let component = mount(test);