Update vertical class merger test expectations
Bug: b/348202700
Change-Id: I401aa09c7db76d95ab1c2650b63608e062824a91
diff --git a/src/test/java/com/android/tools/r8/classmerging/vertical/ClassesHaveBeenMergedTest.java b/src/test/java/com/android/tools/r8/classmerging/vertical/ClassesHaveBeenMergedTest.java
index f22226d..649cc73 100644
--- a/src/test/java/com/android/tools/r8/classmerging/vertical/ClassesHaveBeenMergedTest.java
+++ b/src/test/java/com/android/tools/r8/classmerging/vertical/ClassesHaveBeenMergedTest.java
@@ -48,11 +48,10 @@
}
private void inspectVerticallyMergedClasses(VerticallyMergedClassesInspector inspector) {
- inspector.assertMergedIntoSubtype(
- GenericInterface.class,
- GenericAbstractClass.class,
- Outer.SuperClass.class,
- SuperClass.class);
+ inspector
+ .assertMergedIntoSubtype(
+ GenericInterface.class, GenericAbstractClass.class, Outer.SuperClass.class)
+ .assertNoOtherClassesMerged();
}
private void inspect(CodeInspector inspector) {
@@ -62,7 +61,7 @@
assertThat(inspector.clazz(GenericInterface.class), not(isPresent()));
assertThat(inspector.clazz(GenericAbstractClass.class), not(isPresent()));
assertThat(inspector.clazz(Outer.SuperClass.class), not(isPresent()));
- assertThat(inspector.clazz(SuperClass.class), not(isPresent()));
+ assertThat(inspector.clazz(SuperClass.class), isPresent());
}
public static class TestClass {
diff --git a/src/test/java/com/android/tools/r8/classmerging/vertical/VerticalClassMergerTest.java b/src/test/java/com/android/tools/r8/classmerging/vertical/VerticalClassMergerTest.java
index 0eba6d4..0298c38 100644
--- a/src/test/java/com/android/tools/r8/classmerging/vertical/VerticalClassMergerTest.java
+++ b/src/test/java/com/android/tools/r8/classmerging/vertical/VerticalClassMergerTest.java
@@ -250,80 +250,6 @@
}
@Test
- public void testConflictInGeneratedName() throws Throwable {
- String main = "classmerging.ConflictInGeneratedNameTest";
- Path[] programFiles =
- new Path[] {
- CF_DIR.resolve("NeverPropagateValue.class"),
- CF_DIR.resolve("NoAccessModification.class"),
- CF_DIR.resolve("NoRedundantFieldLoadElimination.class"),
- CF_DIR.resolve("ConflictInGeneratedNameTest.class"),
- CF_DIR.resolve("ConflictInGeneratedNameTest$A.class"),
- CF_DIR.resolve("ConflictInGeneratedNameTest$B.class")
- };
- Set<String> preservedClassNames =
- ImmutableSet.of(
- "classmerging.ConflictInGeneratedNameTest",
- "classmerging.ConflictInGeneratedNameTest$B");
- CodeInspector inspector =
- runTestOnInput(
- testForR8(parameters.getBackend())
- .addKeepRules(getProguardConfig(EXAMPLE_KEEP))
- .addOptionsModification(this::configure)
- .addOptionsModification(
- options ->
- options.getVerticalClassMergerOptions().setEnableBridgeAnalysis(false))
- .addOptionsModification(InlinerOptions::disableInlining)
- .allowUnusedProguardConfigurationRules(),
- main,
- readProgramFiles(programFiles),
- preservedClassNames::contains,
- // Disable debug testing since the test has a method with "$classmerging$" in the
- // name.
- null)
- .inspector();
-
- ClassSubject clazzSubject = inspector.clazz("classmerging.ConflictInGeneratedNameTest$B");
- assertThat(clazzSubject, isPresent());
-
- String suffix = "$classmerging$ConflictInGeneratedNameTest$A";
- List<String> EMPTY = ImmutableList.of();
-
- // There should be three fields.
- assertThat(clazzSubject.field("java.lang.String", "name"), isPresent());
- assertThat(clazzSubject.field("java.lang.String", "name$" + "1"), isPresent());
- assertThat(clazzSubject.field("java.lang.String", "name" + suffix), isPresent());
-
- // The direct method "$r8$constructor$classmerging$ConflictInGeneratedNameTest$A" is processed
- // after the method "<init>" is renamed to exactly that name. Therefore the conflict should have
- // been resolved by appending [suffix] to it.
- assertThat(
- clazzSubject.method("void", "$r8$constructor" + suffix + suffix, EMPTY), isPresent());
-
- // There should be two foo's.
- assertThat(clazzSubject.method("void", "foo", EMPTY), isPresent());
- assertThat(clazzSubject.method("void", "foo" + suffix, EMPTY), isPresent());
-
- // There should be two bar's.
- assertThat(clazzSubject.method("void", "bar", EMPTY), isPresent());
- assertThat(clazzSubject.method("void", "bar" + suffix, EMPTY), isPresent());
-
- // There should be three baz's.
- assertThat(clazzSubject.method("void", "baz", EMPTY), isPresent());
- assertThat(clazzSubject.method("void", "baz" + suffix, EMPTY), isPresent());
- assertThat(clazzSubject.method("void", "baz" + suffix + "$1", EMPTY), isPresent());
-
- // There should be three boo's.
- assertThat(clazzSubject.method("void", "boo", EMPTY), isPresent());
- assertThat(clazzSubject.method("void", "boo" + suffix, EMPTY), isPresent());
- assertThat(clazzSubject.method("void", "boo" + suffix + "$1", EMPTY), isPresent());
-
- // There should be two getName's.
- assertThat(clazzSubject.method("java.lang.String", "getName", EMPTY), isPresent());
- assertThat(clazzSubject.method("java.lang.String", "getName" + suffix, EMPTY), isPresent());
- }
-
- @Test
public void testFieldCollision() throws Throwable {
String main = "classmerging.FieldCollisionTest";
Path[] programFiles =