В моем тесте Saga для моего собственного реагирующего приложения (которое работает правильно) я добавил следующий тест, который вызывает функцию, выполняющую вызов POST http (doScan).
describe('Scan the product and register the scanning action', () => {
const it = sagaHelper(scanProductSaga(scanProductAction(item)));
it('logscan via ASL', (result) => {
expect(result).toEqual(cps(ASLogger.logScan, xxx));
return logScanResult;
});
it('should register the product', (result) => {
expect(result).toEqual(call(doScan, logScanResult));
});
});
Отдельный файл:
const doScan = scanObj =>
toJSON(fetch('https://xxxx.xxxxxx.com/logger/scans', {
method: 'POST',
headers: new Headers(CONTENT_TYPE_HEADERS),
body: JSON.stringify(scanObj),
}));
Примечание: функция извлечения происходит из'act-native-interfaces.js 'внутри библиотекиact-native.Тест не пройден, и ошибка вызвана следующим исключением:
ReferenceError: fetch is not defined
at doScan (/Users/andy/WebstormProjects/ASAP/api/index.js:81:11)....
Что может вызвать такую проблему?Какое решение может быть?