@uabylbekov

Как найти элемент внутри ReactWarpper?

У меня есть след snapshot
<div>
    <div className="divClass" onClick={[Function]}>
        <span className="spanClass">
          <span className="innerSpanClass" aria-label="someLabel1">
          </span>
        </span>
    </div>
    <div className="divClass onClick={[Function]}">
        <span className="spanClass">
          <span className="innerSpanClass" aria-label="someLabel2">
          </span>
        </span>
    </div>
</div>


метод который запускается при onClick:
openWindow(link) {
    window.open(link, 'Video', "width=1240, height=800, location=0, resizable=1, left=120, top=100, srollbars=1");
}


И тест кейс:
test('windows opens correctly', () => {
    delete global.window.location;
    global.window = Object.create(window);
    global.window = {
       open: () => {}
    };
    global.window.open = jest.fn();
    let wrapper = mount(component);
    let links = wrapper.find('.divClass')
    links.forEach(node=> {
        let span = node.find('.innerSpanClass');
        if (span.aria-label === "someLabel1") {
            node.simulate('click');
            expect(global.window.open.mock.calls.length).toBe(1);
            global.window.open.mockClear());
        }
    })
})


При запуске теста в переменной span лежит undefined. Я пробовал найти элемент через querySelector.
  • Вопрос задан
  • 17 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы