Тестирование Share.share в React Native с Detox

#ios #react-native #detox

#iOS #react-native #детоксикация

Вопрос:

Я пытаюсь написать тест e2e с использованием Detox для потока, в котором пользователь делится глубокой ссылкой на определенный экран в приложении. Я хочу иметь возможность захватывать ссылку на общий доступ, созданную, когда пользователь нажимает кнопку «поделиться» (которая на реальном устройстве откроет всплывающее окно «Собственный общий доступ»), затем перейдите по этой ссылке, используя device.openUrl() . Это должно выглядеть примерно так:

 await element(by.id('test-id-of-share-button')).tap();
const sharedUrl = obtainTheUrlPassedToTheSharePopupBySomeMagicalVoodooWay();
await device.openURL({ url: sharedUrl });
await expect(element(by.id('test-id-of-element-on-target-screen'))).toBeVisible();

 

Дело в том, что я не знаю, как это сделать красиво. Я, вероятно, могу издеваться над модулем общего доступа, но тогда мне каким-то образом придется передавать данные из макетной функции в процесс тестирования. Вероятно, я могу сделать это, запустив простой http-сервер в тесте и вызвав этот сервер из макетной функции, но я думаю, что должен быть лучший способ сделать это.

Был бы признателен за любую информацию.