Jest-тест не пройден, предупреждение не определено - PullRequest
0 голосов
/ 21 января 2020

Я использую jest для своего собственного собственного реактивного проекта, я хочу протестировать компонент, который имеет "onPress". При нажатии на него появляется оповещение.

<ListItem
      testID={'Contact'}
      onPress={() => alert('hello')}
/>

и проверяется;

it('test onPress functionality', () => {
    window.alert = jest.fn();
    const wrapper = shallow(
      <Contact
        onPress={window.alert}
      />,
    );
    wrapper
      .findWhere(node => node.prop('testID') === 'Contact')
      .props()
      .onPress();
    expect(window.alert).toHaveBeenCalledWith('hello');
  });

, но этот тест выдает ошибку оповещения.

ReferenceError: предупреждение не определено onPress = {() => alert ('hello')}

, пожалуйста, помогите мне исправить эту ошибку.

Ответы [ 2 ]

1 голос
/ 21 января 2020

.use реагировать на нативное оповещение

import {Alert} from 'react-native';

<ListItem
      testID={'Contact'}
      onPress={() => Alert.alert('hello')}
/>

проверить документацию здесь

0 голосов
/ 21 января 2020

Ваш тест неверен, так как вы проверяете, что аргументом является onPress.

expect(window.alert).toHaveBeenCalledWith('hello');

Выше должно работать.

...