Проблемы Babel с последней версией Jest, обновляющей ReactNative

При обновлении ReactNative до последней версии я столкнулся с множеством проблем с некоторыми тестами, которые раньше работали нормально.

at _next (.../node_modules/@babel/runtime/helpers/asyncToGenerator.js:22:9)
    at .../node_modules/@babel/runtime/helpers/asyncToGenerator.js:27:7
    at new Promise (<anonymous>)
...
at _next (.../node_modules/@babel/runtime/helpers/asyncToGenerator.js:22:9)
    at .../node_modules/@babel/runtime/helpers/asyncToGenerator.js:27:7
    at new Promise (<anonymous>)
...
node_modules/@babel/runtime/helpers/asyncToGenerator.js:22:9) {
  cause: undefined
}

Странно и трудно понять, откуда возникла проблема, потому что в тесте нет никаких изменений, которые могли бы ее спровоцировать, поэтому это должно быть что-то, что было изменено в шутку, вавилоне или какой-то связанной зависимости.

"jest": "^29.3.1",
"@babel/core": "7.20.12"
"react-native": "0.71.1"

Есть идеи?

Умерло ли Create-React-App?
Умерло ли Create-React-App?
В этом документальном фильме React.dev мы исследуем, мертв ли Create React App (CRA) и какое будущее ждет этот популярный фреймворк React.
Освоение React Native: Пошаговое руководство для начинающих
Освоение React Native: Пошаговое руководство для начинающих
React Native - это популярный фреймворк с открытым исходным кодом, используемый для разработки мобильных приложений. Он был разработан компанией...
В чем разница между react native и react ?
В чем разница между react native и react ?
React и React Native - два популярных фреймворка для создания пользовательских интерфейсов, но они предназначены для разных платформ. React - это...
От React к React Native: Руководство для начинающих по разработке мобильных приложений с использованием React
От React к React Native: Руководство для начинающих по разработке мобильных приложений с использованием React
Если вы уже умеете работать с React, создание мобильных приложений для iOS и Android - это новое приключение, в котором вы сможете применить свои...
Хуки React: что это такое и как их использовать
Хуки React: что это такое и как их использовать
Хуки React - это мощная функция библиотеки React, которая позволяет разработчикам использовать состояние и другие возможности React без написания...
0
0
58
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Впоследствии один из моих коллег обнаружил (спасибо, Гектор :)), что проблема заключалась в том, как jest обрабатывать промисы в предыдущих версиях по сравнению с последней, просто выполняя обновление ReactNative версия за версией, а не от предыдущей до последней. один. Итак, мы обнаружили, что в выпусках , которые изменились с 0.70.6 (15 ноября 2022 г.) на 0.71.0-RC.1 (23 ноября 2022 г.), сломались наши тесты.

Это было связано с этим: полифиллинг Promise в Jest.

И одним из ключей было установить установочный файл в jest.config.js:

setupFiles: ['./jest/setup.js'],

с этим конфигом:

global.__DEV__ = true;
global.Promise = jest.requireActual('promise');

Еще нам было полезно взглянуть на руководства по обновлению jest

Я надеюсь, что это поможет кому-то также, для нас было немного трудно обнаружить проблему. ;)

Другие вопросы по теме