Реагировать на родной фермент Тестирование Flatlist onPress - PullRequest
0 голосов
/ 21 марта 2020

У меня есть FlatList, который отображает компоненты TouchableOpacity. У этих touchables есть вызов функции onPress, который я хочу протестировать. Я использую фермент. Вот компонент flatList. Ошибка тестирования onPress Я получаю TypeError: touchableList.simulate не является функцией

  <FlatList
    keyboardShouldPersistTaps={"handled"}
    data={autoCompleteValues}
    renderItem={({ item }: { item: POI }) => (
      <TouchableOpacity
        testID={"touchableList"}
        onPress={() => setLocation(item)}
        key={item.displayName}
        style={styles.list}
      >
        <Text style={styles.text}>{item.displayName}</Text>
        <Entypo name={"chevron-thin-right"} size={24} color={"#454F63"} />
      </TouchableOpacity>
    )}
  />

Тестовый код, это выдает ошибку TypeError: touchableList.simulate не является функцией

  it("should run provided function on press", () => {
    const mockSetLocation = jest.fn();

    const wrapper = shallow(
      <AutoComplete
        autoCompleteValues={mockPOIs}
        setLocation={mockSetLocation}
      />
    );
    const touchableList = wrapper
      .find("FlatList")
      .props()
      .renderItem({ item: { displayName: "test" } });
    expect(touchableList.type).toBe(TouchableOpacity);
    touchableList.simulate("press");

  });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...