Add main dex tracing test for a new array reference
Change-Id: I8caad537872e375f5f5149a129643993440c8ee0
diff --git a/src/test/examples/multidex005/ArrayReference.java b/src/test/examples/multidex005/ArrayReference.java
new file mode 100644
index 0000000..b877486
--- /dev/null
+++ b/src/test/examples/multidex005/ArrayReference.java
@@ -0,0 +1,12 @@
+// Copyright (c) 2019, the R8 project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+package multidex005;
+
+public class ArrayReference {
+
+ public Object directReference() {
+ return new DirectlyReferenced[1];
+ }
+}
diff --git a/src/test/examples/multidex005/main-dex-rules-8.txt b/src/test/examples/multidex005/main-dex-rules-8.txt
new file mode 100644
index 0000000..6e86e48
--- /dev/null
+++ b/src/test/examples/multidex005/main-dex-rules-8.txt
@@ -0,0 +1,7 @@
+# Copyright (c) 2019, the R8 project authors. Please see the AUTHORS file
+# for details. All rights reserved. Use of this source code is governed by a
+# BSD-style license that can be found in the LICENSE file.
+
+-keep public class *.ArrayReference {
+ <init>();
+}
diff --git a/src/test/examples/multidex005/ref-list-8.txt b/src/test/examples/multidex005/ref-list-8.txt
new file mode 100644
index 0000000..3937484
--- /dev/null
+++ b/src/test/examples/multidex005/ref-list-8.txt
@@ -0,0 +1,8 @@
+Lmultidex005/ArrayReference;
+Lmultidex005/DirectlyReferenced;
+Lmultidex005/Interface1;
+Lmultidex005/Interface2;
+Lmultidex005/Interface3;
+Lmultidex005/SuperClass;
+Lmultidex005/SuperInterface;
+Lmultidex005/SuperSuperClass;
diff --git a/src/test/java/com/android/tools/r8/maindexlist/MainDexTracingTest.java b/src/test/java/com/android/tools/r8/maindexlist/MainDexTracingTest.java
index 31170d3..ad4535f 100644
--- a/src/test/java/com/android/tools/r8/maindexlist/MainDexTracingTest.java
+++ b/src/test/java/com/android/tools/r8/maindexlist/MainDexTracingTest.java
@@ -219,6 +219,11 @@
}
@Test
+ public void traceMainDexList005_8() throws Throwable {
+ doTest5(8);
+ }
+
+ @Test
public void traceMainDexList006() throws Throwable {
doTest(
"traceMainDexList006",