Fix 071-dexfile by having run-test use a unique directory
If userdata.img is flashed, the /data/art-test is owned by the system
user. However, 071 requires the directory it runs in to have be owned
by the running user (root in eng builds).
Change-Id: I5230908291fd2ff6c5ebda98cfc3ef4c7ea7482e
diff --git a/test/003-omnibus-opcodes/build b/test/003-omnibus-opcodes/build
index f8abd9a..8dbfc90 100644
--- a/test/003-omnibus-opcodes/build
+++ b/test/003-omnibus-opcodes/build
@@ -23,5 +23,6 @@
${JAVAC} -d classes `find src2 -name '*.java'`
dx -JXmx256m --debug --dex --dump-to=classes.lst --output=classes.dex classes
-zip ${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar classes.dex
-dex2oatd --boot-image=${ANDROID_PRODUCT_OUT}/data/art-test/core.art --dex-file=${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar --dex-location=/data/art-test/$TEST_NAME.jar --oat-file=${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar.oat
+mkdir -p ${ANDROID_PRODUCT_OUT}/data/run-test
+zip ${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar classes.dex
+dex2oatd --boot-image=${ANDROID_PRODUCT_OUT}/data/art-test/core.art --dex-file=${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar --dex-location=/data/run-test/$TEST_NAME.jar --oat-file=${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar.oat
diff --git a/test/022-interface/build b/test/022-interface/build
index fd9d22e..43b1cc9 100644
--- a/test/022-interface/build
+++ b/test/022-interface/build
@@ -20,5 +20,6 @@
# Use classes that are compiled with ecj that exposes an invokeinterface
# issue when interfaces override methods in Object
dx --debug --dex --dump-to=classes.lst --output=classes.dex classes
-zip ${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar classes.dex
-dex2oatd --boot-image=${ANDROID_PRODUCT_OUT}/data/art-test/core.art --dex-file=${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar --dex-location=/data/art-test/$TEST_NAME.jar --oat-file=${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar.oat
+mkdir -p ${ANDROID_PRODUCT_OUT}/data/run-test
+zip ${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar classes.dex
+dex2oatd --boot-image=${ANDROID_PRODUCT_OUT}/data/art-test/core.art --dex-file=${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar --dex-location=/data/run-test/$TEST_NAME.jar --oat-file=${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar.oat
diff --git a/test/023-many-interfaces/build b/test/023-many-interfaces/build
index eb3424a..005390e 100644
--- a/test/023-many-interfaces/build
+++ b/test/023-many-interfaces/build
@@ -25,5 +25,6 @@
${JAVAC} -d classes src/*.java
dx --debug --dex --dump-to=classes.lst --output=classes.dex classes
-zip ${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar classes.dex
-dex2oatd --boot-image=${ANDROID_PRODUCT_OUT}/data/art-test/core.art --dex-file=${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar --dex-location=/data/art-test/$TEST_NAME.jar --oat-file=${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar.oat
+mkdir -p ${ANDROID_PRODUCT_OUT}/data/run-test
+zip ${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar classes.dex
+dex2oatd --boot-image=${ANDROID_PRODUCT_OUT}/data/art-test/core.art --dex-file=${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar --dex-location=/data/run-test/$TEST_NAME.jar --oat-file=${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar.oat
diff --git a/test/056-const-string-jumbo/build b/test/056-const-string-jumbo/build
index a2b4ee3..3e015d1 100644
--- a/test/056-const-string-jumbo/build
+++ b/test/056-const-string-jumbo/build
@@ -43,5 +43,6 @@
${JAVAC} -d classes src/*.java
dx -JXmx500m --debug --dex --no-optimize --positions=none --no-locals --dump-to=classes.lst --output=classes.dex classes
-zip ${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar classes.dex
-dex2oatd --boot-image=${ANDROID_PRODUCT_OUT}/data/art-test/core.art --dex-file=${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar --dex-location=/data/art-test/$TEST_NAME.jar --oat-file=${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar.oat
+mkdir -p ${ANDROID_PRODUCT_OUT}/data/run-test
+zip ${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar classes.dex
+dex2oatd --boot-image=${ANDROID_PRODUCT_OUT}/data/art-test/core.art --dex-file=${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar --dex-location=/data/run-test/$TEST_NAME.jar --oat-file=${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar.oat
diff --git a/test/068-classloader/src/FancyLoader.java b/test/068-classloader/src/FancyLoader.java
index 5eb0249..44f335b 100644
--- a/test/068-classloader/src/FancyLoader.java
+++ b/test/068-classloader/src/FancyLoader.java
@@ -38,7 +38,7 @@
static final String CLASS_PATH = "classes-ex/";
/* this is the "alternate" DEX/Jar file */
- static final String DEX_FILE = "/data/art-test/068-classloader-ex.jar";
+ static final String DEX_FILE = "/data/run-test/068-classloader-ex.jar";
/* on Dalvik, this is a DexFile; otherwise, it's null */
private Class mDexClass;
diff --git a/test/071-dexfile/info.txt b/test/071-dexfile/info.txt
index 7328d71..d58cc86 100644
--- a/test/071-dexfile/info.txt
+++ b/test/071-dexfile/info.txt
@@ -1,4 +1,4 @@
Exercise some Dalvik-specific DEX file features. This is not expected to
work on other VMs.
-NOTE: the test requires that /data/art-test/ exists and is writable and not mounted noexec.
+NOTE: the test requires that /data/run-test/ exists and is writable and not mounted noexec.
diff --git a/test/071-dexfile/src/Main.java b/test/071-dexfile/src/Main.java
index 0845e87..1fc84e5 100644
--- a/test/071-dexfile/src/Main.java
+++ b/test/071-dexfile/src/Main.java
@@ -22,8 +22,8 @@
* DexFile tests (Dalvik-specific).
*/
public class Main {
- private static final String CLASS_PATH = "/data/art-test/071-dexfile-ex.jar";
- private static final String ODEX_DIR = "/data/art-test";
+ private static final String CLASS_PATH = "/data/run-test/071-dexfile-ex.jar";
+ private static final String ODEX_DIR = "/data/run-test";
//private static final String ODEX_DIR = ".";
private static final String ODEX_ALT = "/tmp";
private static final String LIB_DIR = "/nowhere/nothing/";
diff --git a/test/085-old-style-inner-class/build b/test/085-old-style-inner-class/build
index 02190f2..299fc02 100644
--- a/test/085-old-style-inner-class/build
+++ b/test/085-old-style-inner-class/build
@@ -25,5 +25,6 @@
# Suppress stderr to keep the inner class warnings out of the expected output.
dx --debug --dex --dump-to=classes.lst --output=classes.dex --dump-width=1000 classes 2>/dev/null
-zip ${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar classes.dex
-dex2oatd --boot-image=${ANDROID_PRODUCT_OUT}/data/art-test/core.art --dex-file=${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar --dex-location=/data/art-test/$TEST_NAME.jar --oat-file=${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar.oat 2>/dev/null
+mkdir -p ${ANDROID_PRODUCT_OUT}/data/run-test
+zip ${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar classes.dex
+dex2oatd --boot-image=${ANDROID_PRODUCT_OUT}/data/art-test/core.art --dex-file=${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar --dex-location=/data/run-test/$TEST_NAME.jar --oat-file=${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar.oat 2>/dev/null
diff --git a/test/086-null-super/src/Main.java b/test/086-null-super/src/Main.java
index 1109dec..2a15b9e 100644
--- a/test/086-null-super/src/Main.java
+++ b/test/086-null-super/src/Main.java
@@ -55,7 +55,7 @@
private static final String CLASS_NAME =
"Main$BrokenDexLoader$Inaccessible";
- private static final String DEX_FILE = "/data/art-test/086-null-super.jar";
+ private static final String DEX_FILE = "/data/run-test/086-null-super.jar";
public BrokenDexLoader(ClassLoader parent) {
super(parent);
diff --git a/test/087-gc-after-link/src/Main.java b/test/087-gc-after-link/src/Main.java
index b28542f..ca259f9 100644
--- a/test/087-gc-after-link/src/Main.java
+++ b/test/087-gc-after-link/src/Main.java
@@ -55,7 +55,7 @@
private static final String CLASS_NAME =
"Main$BrokenDexLoader$Inaccessible";
- private static final String DEX_FILE = "/data/art-test/087-gc-after-link.jar";
+ private static final String DEX_FILE = "/data/run-test/087-gc-after-link.jar";
public BrokenDexLoader(ClassLoader parent) {
super(parent);
diff --git a/test/etc/default-build b/test/etc/default-build
index 1d11c9f..308a49f 100755
--- a/test/etc/default-build
+++ b/test/etc/default-build
@@ -25,8 +25,9 @@
fi
dx -JXmx256m --debug --dex --dump-to=classes.lst --output=classes.dex --dump-width=1000 classes
-zip ${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar classes.dex
-dex2oatd --boot-image=${ANDROID_PRODUCT_OUT}/data/art-test/core.art --dex-file=${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar --dex-location=/data/art-test/$TEST_NAME.jar --oat-file=${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar.oat
+mkdir -p ${ANDROID_PRODUCT_OUT}/data/run-test
+zip ${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar classes.dex
+dex2oatd --boot-image=${ANDROID_PRODUCT_OUT}/data/art-test/core.art --dex-file=${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar --dex-location=/data/run-test/$TEST_NAME.jar --oat-file=${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar.oat
if [ -r src-ex ]; then
mkdir classes-ex
@@ -36,8 +37,9 @@
# quick shuffle so that the stored name is "classes.dex"
mv classes.dex classes-1.dex
mv classes-ex.dex classes.dex
- zip ${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME-ex.jar classes.dex
- dex2oatd --boot-image=${ANDROID_PRODUCT_OUT}/data/art-test/core.art --dex-file=${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME-ex.jar --dex-location=/data/art-test/$TEST_NAME-ex.jar --oat-file=${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME-ex.jar.oat
+ mkdir -p ${ANDROID_PRODUCT_OUT}/data/run-test
+ zip ${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME-ex.jar classes.dex
+ dex2oatd --boot-image=${ANDROID_PRODUCT_OUT}/data/art-test/core.art --dex-file=${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME-ex.jar --dex-location=/data/run-test/$TEST_NAME-ex.jar --oat-file=${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME-ex.jar.oat
mv classes.dex classes-ex.dex
mv classes-1.dex classes.dex
fi
diff --git a/test/etc/push-and-run-test-jar b/test/etc/push-and-run-test-jar
index 19d5988..324ac2a 100755
--- a/test/etc/push-and-run-test-jar
+++ b/test/etc/push-and-run-test-jar
@@ -91,17 +91,17 @@
msg "------------------------------"
if [ "$QUIET" = "n" ]; then
- adb shell mkdir /data/art-test
- adb push ${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar /data/art-test
- adb push ${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar.oat /data/art-test
- adb push ${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME-ex.jar /data/art-test
- adb push ${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME-ex.jar.oat /data/art-test
+ adb shell mkdir /data/run-test
+ adb push ${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar /data/run-test
+ adb push ${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar.oat /data/run-test
+ adb push ${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME-ex.jar /data/run-test
+ adb push ${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME-ex.jar.oat /data/run-test
else
- adb shell mkdir /data/art-test >/dev/null 2>&1
- adb push ${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar /data/art-test >/dev/null 2>&1
- adb push ${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME.jar.oat /data/art-test >/dev/null 2>&1
- adb push ${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME-ex.jar /data/art-test >/dev/null 2>&1
- adb push ${ANDROID_PRODUCT_OUT}/data/art-test/$TEST_NAME-ex.jar.oat /data/art-test >/dev/null 2>&1
+ adb shell mkdir /data/run-test >/dev/null 2>&1
+ adb push ${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar /data/run-test >/dev/null 2>&1
+ adb push ${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME.jar.oat /data/run-test >/dev/null 2>&1
+ adb push ${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME-ex.jar /data/run-test >/dev/null 2>&1
+ adb push ${ANDROID_PRODUCT_OUT}/data/run-test/$TEST_NAME-ex.jar.oat /data/run-test >/dev/null 2>&1
fi
if [ "$DEBUG" = "y" ]; then
@@ -118,7 +118,7 @@
cmdline="cd /data; $INVOKE_WITH $OATEXEC $DEX_DEBUG $ZYGOTE -Xjnigreflimit:256 \
-Ximage:/data/art-test/core.art \
- -cp /data/art-test/$TEST_NAME.jar \
+ -cp /data/run-test/$TEST_NAME.jar \
Main"
if [ "$DEV_MODE" = "y" ]; then
echo $cmdline "$@"