[Retrace] Add test for retracing of graphs module
Bug: b/300416467
Change-Id: I62a9e490bd8a4ab3d90c05c743e124f8fe67e26c
diff --git a/src/test/java/com/android/tools/r8/retrace/StackTraceRegularExpressionParserTests.java b/src/test/java/com/android/tools/r8/retrace/StackTraceRegularExpressionParserTests.java
index 480f8bf..5917603 100644
--- a/src/test/java/com/android/tools/r8/retrace/StackTraceRegularExpressionParserTests.java
+++ b/src/test/java/com/android/tools/r8/retrace/StackTraceRegularExpressionParserTests.java
@@ -1142,6 +1142,62 @@
runRetraceTest("(?:.*?\\(\\s*%s(?:\\s*:\\s*%l\\s*)?\\)\\s*%c\\.%m)|", new LongLineStackTrace());
}
+ /** This is a regression test for b/300416467. */
+ @Test
+ public void testGraphsModule() {
+ runRetraceTest(
+ "(?:.*, %c,.*)",
+ new StackTraceForTest() {
+ @Override
+ public List<String> obfuscatedStackTrace() {
+ return ImmutableList.of(
+ "TaskGraph@4b0b0f5(\"SomePipeline\") [created at 08-19 18:02:01.531]",
+ " method future (Note: all"
+ + " times are in ms. relative to TaskGraph creation)",
+ " requested, queued, started, finished (+ latency), finished, task",
+ " 0.057, 1.290, 2.690, 3.408 (+ 0.718), 66.376,"
+ + " foo.bar.baz.c.b.a.c.b.a.a.b, 0, 6, 0",
+ "");
+ }
+
+ @Override
+ public String mapping() {
+ return StringUtils.unixLines("some.original.factory -> foo.bar.baz.c.b.a.c.b.a.a.b:");
+ }
+
+ @Override
+ public List<String> retracedStackTrace() {
+ return ImmutableList.of(
+ "TaskGraph@4b0b0f5(\"SomePipeline\") [created at 08-19 18:02:01.531]",
+ " method future (Note: all"
+ + " times are in ms. relative to TaskGraph creation)",
+ " requested, queued, started, finished (+ latency), finished, task",
+ // TODO(b/300416467): We could retrace this correctly.
+ " 0.057, 1.290, 2.690, 3.408 (+ 0.718), 66.376,"
+ + " foo.bar.baz.c.b.a.c.b.a.a.b, 0, 6, 0",
+ "");
+ }
+
+ @Override
+ public List<String> retraceVerboseStackTrace() {
+ return ImmutableList.of(
+ "TaskGraph@4b0b0f5(\"SomePipeline\") [created at 08-19 18:02:01.531]",
+ " method future (Note: all"
+ + " times are in ms. relative to TaskGraph creation)",
+ " requested, queued, started, finished (+ latency), finished, task",
+ // TODO(b/300416467): We could retrace this correctly.
+ " 0.057, 1.290, 2.690, 3.408 (+ 0.718), 66.376,"
+ + " foo.bar.baz.c.b.a.c.b.a.a.b, 0, 6, 0",
+ "");
+ }
+
+ @Override
+ public int expectedWarnings() {
+ return 0;
+ }
+ });
+ }
+
private TestDiagnosticMessagesImpl runRetraceTest(
String regularExpression, StackTraceForTest stackTraceForTest) {
TestDiagnosticMessagesImpl diagnosticsHandler = new TestDiagnosticMessagesImpl();