Reenable test 727-checker-unresolved-class.
Test: testrunner.py --host --jvm -t 727
Test: testrunner.py --target -t 727
Bug: 203171409
Change-Id: If0c1c0d8f13c376da662ceba8809508f2c63058d
diff --git a/test/727-checker-unresolved-class/src-bcpex/unresolved/BcpExMarker.java b/test/727-checker-unresolved-class/src-bcpex/unresolved/BcpExMarker.java
new file mode 100644
index 0000000..bf61ea6
--- /dev/null
+++ b/test/727-checker-unresolved-class/src-bcpex/unresolved/BcpExMarker.java
@@ -0,0 +1,23 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package unresolved;
+
+// Declaring a class as implementing this interface shall make the class unresolved
+// during AOT compilation. This interface shall be available only at runtime.
+public interface BcpExMarker {
+ // Marker interface: no methods.
+}
diff --git a/test/727-checker-unresolved-class/src/unresolved/UnresolvedPackagePrivateClass.java b/test/727-checker-unresolved-class/src/unresolved/UnresolvedPackagePrivateClass.java
index b5ed7ff..95ba5d2 100644
--- a/test/727-checker-unresolved-class/src/unresolved/UnresolvedPackagePrivateClass.java
+++ b/test/727-checker-unresolved-class/src/unresolved/UnresolvedPackagePrivateClass.java
@@ -19,7 +19,7 @@
// This class is used for compiling code that accesses it but it is
// replaced by a package-private class from src2/ with reduced access
// to run tests, including access check tests.
-public class UnresolvedPackagePrivateClass {
+public class UnresolvedPackagePrivateClass implements BcpExMarker {
public static void $noinline$main() {
throw new Error("Unreachable");
}
diff --git a/test/727-checker-unresolved-class/src/unresolved/UnresolvedPackagePrivateClassProxy.java b/test/727-checker-unresolved-class/src/unresolved/UnresolvedPackagePrivateClassProxy.java
index b880a87..e95afe6 100644
--- a/test/727-checker-unresolved-class/src/unresolved/UnresolvedPackagePrivateClassProxy.java
+++ b/test/727-checker-unresolved-class/src/unresolved/UnresolvedPackagePrivateClassProxy.java
@@ -16,5 +16,6 @@
package unresolved;
-public class UnresolvedPackagePrivateClassProxy extends UnresolvedPackagePrivateClass {
+public class UnresolvedPackagePrivateClassProxy extends UnresolvedPackagePrivateClass
+ implements BcpExMarker {
}
diff --git a/test/727-checker-unresolved-class/src/unresolved/UnresolvedPublicClass.java b/test/727-checker-unresolved-class/src/unresolved/UnresolvedPublicClass.java
index 4864e64..cc8ba1a 100644
--- a/test/727-checker-unresolved-class/src/unresolved/UnresolvedPublicClass.java
+++ b/test/727-checker-unresolved-class/src/unresolved/UnresolvedPublicClass.java
@@ -23,7 +23,7 @@
import resolved.ResolvedPackagePrivateClass;
import resolved.ResolvedPublicSubclassOfPackagePrivateClass;
-public class UnresolvedPublicClass {
+public class UnresolvedPublicClass implements BcpExMarker {
public static void $noinline$main() {
$noinline$testReferrersClass();
$noinline$testInlinedReferrersClass();
diff --git a/test/727-checker-unresolved-class/src/unresolved/UnresolvedPublicClazz.java b/test/727-checker-unresolved-class/src/unresolved/UnresolvedPublicClazz.java
index 8fc8dd6..48213d1 100644
--- a/test/727-checker-unresolved-class/src/unresolved/UnresolvedPublicClazz.java
+++ b/test/727-checker-unresolved-class/src/unresolved/UnresolvedPublicClazz.java
@@ -17,5 +17,5 @@
package unresolved;
// Class with the same descriptor length as UnresolvedPublicClass.
-public class UnresolvedPublicClazz {
+public class UnresolvedPublicClazz implements BcpExMarker {
}
diff --git a/test/727-checker-unresolved-class/src2/unresolved/UnresolvedPackagePrivateClass.java b/test/727-checker-unresolved-class/src2/unresolved/UnresolvedPackagePrivateClass.java
index 5c3df25..d7221bd 100644
--- a/test/727-checker-unresolved-class/src2/unresolved/UnresolvedPackagePrivateClass.java
+++ b/test/727-checker-unresolved-class/src2/unresolved/UnresolvedPackagePrivateClass.java
@@ -18,7 +18,7 @@
import getters.GetUnresolvedPackagePrivateClass;
-class UnresolvedPackagePrivateClass {
+class UnresolvedPackagePrivateClass implements BcpExMarker {
public static void $noinline$main() {
$noinline$testReferrersClass();
$noinline$testInlinedReferrersClass();
diff --git a/test/knownfailures.json b/test/knownfailures.json
index b56d727..461ff90 100644
--- a/test/knownfailures.json
+++ b/test/knownfailures.json
@@ -1453,11 +1453,9 @@
},
{
"tests": ["727-checker-unresolved-class"],
- "description": ["The test used to use --updatable-bcp-packages-file to",
- "make classes unresolved, but the flag is deprecated",
- "and no longer takes effect"],
+ "description": ["The run-test-jar script does not support *-bcpex.jar for RI."],
"bug": "b/203171409",
- "variant": "target | host"
+ "variant": "jvm"
},
{
"tests": ["004-ReferenceMap"],