Add run-test support for running without a working patchoat/dex2oat
Also add it to the test-art target.
Bug: 17262039
Change-Id: Id31130194c46df66fc48852d6f8884f14cb08db4
diff --git a/test/run-test b/test/run-test
index 6fac03b..2b4a41d 100755
--- a/test/run-test
+++ b/test/run-test
@@ -81,6 +81,9 @@
gc_verify="false"
gc_stress="false"
always_clean="no"
+have_dex2oat="yes"
+have_patchoat="yes"
+have_image="yes"
while true; do
if [ "x$1" = "x--host" ]; then
@@ -99,6 +102,15 @@
lib="libdvm.so"
runtime="dalvik"
shift
+ elif [ "x$1" = "x--no-dex2oat" ]; then
+ have_dex2oat="no"
+ shift
+ elif [ "x$1" = "x--no-patchoat" ]; then
+ have_patchoat="no"
+ shift
+ elif [ "x$1" = "x--no-image" ]; then
+ have_image="no"
+ shift
elif [ "x$1" = "x--relocate" ]; then
relocate="yes"
shift
@@ -261,6 +273,14 @@
fi
fi
+if [ "$have_patchoat" = "no" ]; then
+ run_args="${run_args} --no-patchoat"
+fi
+
+if [ "$have_dex2oat" = "no" ]; then
+ run_args="${run_args} --no-dex2oat"
+fi
+
if [ ! "$runtime" = "jvm" ]; then
run_args="${run_args} --lib $lib"
fi
@@ -296,6 +316,10 @@
fi
fi
+if [ "$have_image" = "no" ]; then
+ run_args="${run_args} --no-image"
+fi
+
if [ "$dev_mode" = "yes" -a "$update_mode" = "yes" ]; then
echo "--dev and --update are mutually exclusive" 1>&2
usage="yes"
@@ -347,6 +371,8 @@
echo " --zygote Spawn the process from the Zygote." \
"If used, then the"
echo " other runtime options are ignored."
+ echo " --no-dex2oat Run as though dex2oat was failing."
+ echo " --no-patchoat Run as though patchoat was failing."
echo " --prebuild Run dex2oat on the files before starting test. (default)"
echo " --no-prebuild Do not run dex2oat on the files before starting"
echo " the test."