Детокс не работает с Expo SDK 36?
Отладка показывает, что он висит на await device.launchApp()
в reloadApp()
в помощниках детоксикации.
Я прошел через настройка выделена в: Можно ли на самом деле сделать тесты Detox / Jest с помощью приложения React Native, работающего с Expo?
Пример моего теста:
const { reloadApp } = require('detox-expo-helpers');
describe('Example', () => {
beforeEach(async () => {
await reloadApp();
});
it('should have welcome screen', async () => {
await expect(element(by.id('welcome'))).toBeVisible();
});
});
пакет. json
"scripts": {
"e2e": "detox test --configuration ios.sim",
},
"devDependencies": {
"babel-eslint": "^10.0.3",
"babel-preset-expo": "^7.0.0",
"detox": "^15.2.2",
"detox-expo-helpers": "^0.6.0",
"eslint-config-airbnb": "^18.0.1",
"eslint-config-prettier": "^6.7.0",
"eslint-plugin-prettier": "^3.1.1",
"expo-detox-hook": "^1.0.10",
"jest-expo": "^35.0.0",
"pusher-js-mock": "^0.2.0",
"react-native-testing-library": "^1.12.0",
"react-test-renderer": "^16.12.0"
},
"private": true,
"detox": {
"configurations": {
"ios.sim": {
"binaryPath": "bin/Exponent.app",
"type": "ios.simulator",
"name": "iPhone 11"
}
},
"test-runner": "jest"
}
Даже если я обойду обещание зависания через
function timeout(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
beforeEach(async () => {
reloadApp();
await timeout(12000);
});
Оно висит на await expect(element(by.id('welcome'))).toBeVisible();
Что я делаю не так?