Name Description Size
__init__.py 325
android.py Android setup and configuration for browsertime When running raptor-browsertime tests on android, we create the profile (and set the proxy prefs in the profile that is using playback) but we don't need to copy it onto the device because geckodriver takes care of that. We tell browsertime to use our profile (we pass it in with the firefox.profileTemplate arg); browsertime creates a copy of that and passes that into geckodriver. Geckodriver then takes the profile and copies it onto the mobile device's test root for us; and then it even writes the geckoview app config.yaml file onto the device, which points the app to the profile on the device's test root. Therefore, raptor doesn't have to copy the profile onto the scard (and create the config.yaml) file ourselves. Also note when using playback, the nss certificate db is created as usual when mitmproxy is started (and saved in the profile) so it is already included in the profile that browsertime/geckodriver copies onto the device. XXX: bc: This doesn't work with scoped storage in Android 10 since the shell owns the profile directory that is pushed to the device and the profile can no longer be on the sdcard. But when geckodriver's android.rs defines the profile to be located on internal storage, it will be owned by shell but if we are attempting to eliminate root, then when we run shell commands as the app, they will fail due to the app being unable to write to the shell owned profile directory. 10499
base.py Abstract base class for Browsertime 43865
desktop.py 1782