fix(android): fix android tests (#8209)

This commit is contained in:
Pavel Feldman 2021-08-15 22:54:30 -07:00 committed by GitHub
parent 39f663834f
commit bdb772d710
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 14 additions and 10 deletions

View file

@ -52,14 +52,18 @@ export const androidFixtures: Fixtures<PageTestFixtures, AndroidWorkerFixtures &
isElectron: false, isElectron: false,
androidContext: [ async ({ androidDevice }, run) => { androidContext: [ async ({ androidDevice }, run) => {
await run(await androidDevice.launchBrowser()); const context = await androidDevice.launchBrowser();
const [ page ] = context.pages();
await page.goto('data:text/html,Default page');
await run(context);
}, { scope: 'worker' } ], }, { scope: 'worker' } ],
page: async ({ androidContext }, run) => { page: async ({ androidContext }, run) => {
// Retain default page, otherwise Clank will re-create it.
while (androidContext.pages().length > 1)
await androidContext.pages()[1].close();
const page = await androidContext.newPage(); const page = await androidContext.newPage();
await run(page); await run(page);
for (const page of androidContext.pages())
await page.close();
}, },
}; };

View file

@ -17,7 +17,7 @@
import { androidTest as test, expect } from './androidTest'; import { androidTest as test, expect } from './androidTest';
test('androidDevice.model', async function({ androidDevice }) { test('androidDevice.model', async function({ androidDevice }) {
expect(androidDevice.model()).toBe('sdk_gphone_x86_arm'); expect(androidDevice.model()).toBe('sdk_gphone64_x86_64');
}); });
test('androidDevice.launchBrowser', async function({ androidDevice }) { test('androidDevice.launchBrowser', async function({ androidDevice }) {

View file

@ -13,7 +13,7 @@ mkdir ${SDKDIR}/cmdline-tools
echo Downloading Android SDK... echo Downloading Android SDK...
cd ${SDKDIR}/cmdline-tools cd ${SDKDIR}/cmdline-tools
COMMAND_LINE_TOOLS_ZIP=${SDKDIR}/commandlinetools.zip COMMAND_LINE_TOOLS_ZIP=${SDKDIR}/commandlinetools.zip
curl https://dl.google.com/android/repository/commandlinetools-mac-6858069_latest.zip -o ${COMMAND_LINE_TOOLS_ZIP} curl https://dl.google.com/android/repository/commandlinetools-mac-7583922_latest.zip -o ${COMMAND_LINE_TOOLS_ZIP}
unzip ${COMMAND_LINE_TOOLS_ZIP} unzip ${COMMAND_LINE_TOOLS_ZIP}
rm ${COMMAND_LINE_TOOLS_ZIP} rm ${COMMAND_LINE_TOOLS_ZIP}
mv cmdline-tools latest mv cmdline-tools latest
@ -23,7 +23,7 @@ echo Installing emulator...
yes | ${ANDROID_HOME}/tools/bin/sdkmanager --install platform-tools emulator yes | ${ANDROID_HOME}/tools/bin/sdkmanager --install platform-tools emulator
echo Installing platform SDK... echo Installing platform SDK...
yes | ${ANDROID_HOME}/tools/bin/sdkmanager --install "platforms;android-30" yes | ${ANDROID_HOME}/tools/bin/sdkmanager --install "platforms;android-31"
echo Starting ADB... echo Starting ADB...
${ANDROID_HOME}/platform-tools/adb devices ${ANDROID_HOME}/platform-tools/adb devices

View file

@ -8,7 +8,7 @@ if [[ -z "${ANDROID_HOME}" ]]; then
export ANDROID_SDK_ROOT=${SDKDIR} export ANDROID_SDK_ROOT=${SDKDIR}
fi fi
${ANDROID_HOME}/tools/bin/avdmanager delete avd --name android30 || true ${ANDROID_HOME}/tools/bin/avdmanager delete avd --name android31 || true
echo "y" | ${ANDROID_HOME}/tools/bin/sdkmanager --install "system-images;android-30;google_apis;x86" echo "y" | ${ANDROID_HOME}/tools/bin/sdkmanager --install "system-images;android-31;google_apis;x86_64"
echo "no" | ${ANDROID_HOME}/tools/bin/avdmanager create avd --force --name android30 --device "Nexus 5X" --package "system-images;android-30;google_apis;x86" echo "no" | ${ANDROID_HOME}/tools/bin/avdmanager create avd --force --name android31 --device "Nexus 5X" --package "system-images;android-31;google_apis;x86_64"
${ANDROID_HOME}/emulator/emulator -list-avds ${ANDROID_HOME}/emulator/emulator -list-avds

View file

@ -12,7 +12,7 @@ echo "Killing previous emulators"
${ANDROID_HOME}/platform-tools/adb devices | grep emulator | cut -f1 | while read line; do ${ANDROID_HOME}/platform-tools/adb -s $line emu kill; done ${ANDROID_HOME}/platform-tools/adb devices | grep emulator | cut -f1 | while read line; do ${ANDROID_HOME}/platform-tools/adb -s $line emu kill; done
echo "Starting emulator" echo "Starting emulator"
nohup ${ANDROID_HOME}/emulator/emulator -avd android30 -no-audio -gpu swiftshader & nohup ${ANDROID_HOME}/emulator/emulator -avd android31 -no-audio &
${ANDROID_HOME}/platform-tools/adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed | tr -d '\r') ]]; do sleep 1; done; input keyevent 82' ${ANDROID_HOME}/platform-tools/adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed | tr -d '\r') ]]; do sleep 1; done; input keyevent 82'
${ANDROID_HOME}/platform-tools/adb devices ${ANDROID_HOME}/platform-tools/adb devices
echo "Emulator started" echo "Emulator started"