0
私は酵素の反応ネイティブフラットリストでテストしようとしています。 試験は酵素でネイティブフラットリストに反応します
import { listIsAtTheEnd } from "./actions";
import { mount } from "enzyme";
jest.mock("./actions");
describe("Main page",() => {
if("Calls listIsAtTheEnd when FlatList reaches the end",() => {
var app = mount(<App />);
var container = app.find("FlatListContainer");
var fList = container.childAt(0);
fList.instance().scrollToEnd();
expect(listIsAtTheEnd.mock.calls).toHaveLength(1)
})
})
しかし、これは私が取得していますものです:私は、リストが最後に到達したときに右の関数が呼び出されたかどうかを確認したい私が間違って
TypeError: this._scrollRef.scrollTo is not a function
at VirtualizedList.scrollToEnd (node_modules/react-native/Libraries/Lists/VirtualizedList.js:219:17)
at FlatList.scrollToEnd (node_modules/react-native/Libraries/Lists/FlatList.js:544:141)
at Object.<anonymous> (src/components/forumPage/__tests__/forumPageTests.js:81:21)
at tryCallTwo (node_modules/promise/lib/core.js:45:5)
at doResolve (node_modules/promise/lib/core.js:200:13)
at new Promise (node_modules/promise/lib/core.js:66:3)
何をしているのですか?これをテストする正しい方法は何ですか?
合意。ネイティブコンポーネントをモックするのを助けるために 'react-native-mock-render'で'酵素 'を使ってみましたが、私はアサーションやスナップショットのために十分なものが見つからず、' jest'と 'テストレンダラー '。それは動く標的です。 React Nativeは 'FlatList'のような新しいコントロールを得て、適切なテストをするなら正しく嘲笑する必要があります。簡単な作業ではありません。 –