Auto merge of #21242 - servo:android-wpt, r=jdm

Run a couple WPT tests on Android on CI

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/21242)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2018-07-28 12:10:42 -04:00 committed by GitHub
commit e9bc6f43be
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 18 additions and 1 deletions

View file

@ -167,6 +167,8 @@ android-x86:
- ./etc/ci/bootstrap-android-and-accept-licences.sh
- env --unset ANDROID_NDK --unset ANDROID_SDK ./mach build --target i686-linux-android --release
- env --unset ANDROID_NDK --unset ANDROID_SDK ./mach test-android-startup --release
- env --unset ANDROID_NDK --unset ANDROID_SDK ./mach test-wpt-android --release /_mozilla/mozilla/DOMParser.html
- env --unset ANDROID_NDK --unset ANDROID_SDK ./mach test-wpt-android --release /_mozilla/mozilla/webgl/context_creation_error.html
- bash ./etc/ci/lockfile_changed.sh
android-nightly:

View file

@ -54,6 +54,7 @@ def main(avd_name, apk_path, *args):
check_call(adb + ["install", "-r", apk_path])
args = list(args)
write_user_stylesheets(adb, args)
write_hosts_file(adb)
write_args(adb, args)
check_call(adb + ["shell", "am start com.mozilla.servo/com.mozilla.servo.MainActivity"],
@ -143,6 +144,15 @@ def write_user_stylesheets(adb, args):
check_call(adb + ["push", path, remote_path], stdout=sys.stderr)
def write_hosts_file(adb):
hosts_file = os.environ.get("HOST_FILE")
if hosts_file:
data_dir = "/sdcard/Android/data/com.mozilla.servo/files"
check_call(adb + ["shell", "mkdir -p %s" % data_dir])
remote_path = data_dir + "/android_hosts"
check_call(adb + ["push", hosts_file, remote_path], stdout=sys.stderr)
def forward_webdriver(adb, args):
webdriver_port = extract_arg("--webdriver", args)
if webdriver_port is not None:

View file

@ -46,7 +46,6 @@ mod resources;
use backtrace::Backtrace;
use servo::Servo;
use servo::compositing::windowing::WindowEvent;
#[cfg(target_os = "android")]
use servo::config;
use servo::config::opts::{self, ArgumentParsingResult, parse_url_or_filename};
use servo::config::servo_version;
@ -105,6 +104,12 @@ fn main() {
resources::init();
if cfg!(target_os = "android") && env::var_os("HOST_FILE").is_none() {
let mut path = config::basedir::default_config_dir();
path.push("android_hosts");
env::set_var("HOST_FILE", path);
}
// Parse the command line options and store them globally
let opts_result = opts::from_cmdline_args(&*args());