diff options
author | Eric Rowe <erowe@google.com> | 2014-02-24 12:10:47 -0800 |
---|---|---|
committer | Eric Rowe <erowe@google.com> | 2014-02-24 12:10:47 -0800 |
commit | 352916e3ed194bcae51744741486ddbeb2764002 (patch) | |
tree | 78840ec2cc15e84ac1a661d8cd4dbdf47d26a3b5 /tests | |
parent | a45914a68f31b8f20c55affc63a1f07120a005c7 (diff) | |
download | loganalysis-352916e3ed194bcae51744741486ddbeb2764002.tar.gz |
Fix ANR traces parsing
Bug: 12903905
Change-Id: I0a7551f4ad7bc000f006e4adf82140427b1265bc
Diffstat (limited to 'tests')
-rw-r--r-- | tests/src/com/android/loganalysis/parser/TracesParserTest.java | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/tests/src/com/android/loganalysis/parser/TracesParserTest.java b/tests/src/com/android/loganalysis/parser/TracesParserTest.java index b5636e0..c5046e3 100644 --- a/tests/src/com/android/loganalysis/parser/TracesParserTest.java +++ b/tests/src/com/android/loganalysis/parser/TracesParserTest.java @@ -104,4 +104,64 @@ public class TracesParserTest extends TestCase { assertEquals("com.android.package", traces.getApp()); assertEquals(ArrayUtil.join("\n", expectedStack), traces.getStack()); } + + /** + * Test that both forms of cmd line match for the trace. + */ + public void testTracesParser_cmdline() { + List<String> expectedStack = Arrays.asList( + "\"main\" prio=5 tid=1 SUSPENDED", + " | group=\"main\" sCount=1 dsCount=0 obj=0x00000001 self=0x00000001", + " | sysTid=2887 nice=0 sched=0/0 cgrp=foreground handle=0000000001", + " | schedstat=( 0 0 0 ) utm=5954 stm=1017 core=0", + " at class.method1(Class.java:1)", + " at class.method2(Class.java:2)", + " at class.method2(Class.java:2)"); + + List<String> lines = Arrays.asList( + "", + "", + "----- pid 2887 at 2012-05-02 16:43:41 -----", + "Cmd line: com.android.package", + "", + "DALVIK THREADS:", + "(mutexes: tll=0 tsl=0 tscl=0 ghl=0)", + "", + "\"main\" prio=5 tid=1 SUSPENDED", + " | group=\"main\" sCount=1 dsCount=0 obj=0x00000001 self=0x00000001", + " | sysTid=2887 nice=0 sched=0/0 cgrp=foreground handle=0000000001", + " | schedstat=( 0 0 0 ) utm=5954 stm=1017 core=0", + " at class.method1(Class.java:1)", + " at class.method2(Class.java:2)", + " at class.method2(Class.java:2)", + ""); + + TracesItem traces = new TracesParser().parse(lines); + assertEquals(2887, traces.getPid().intValue()); + assertEquals("com.android.package", traces.getApp()); + assertEquals(ArrayUtil.join("\n", expectedStack), traces.getStack()); + + lines = Arrays.asList( + "", + "", + "----- pid 2887 at 2012-05-02 16:43:41 -----", + "Cmdline: com.android.package Original command line: <unset>", + "", + "DALVIK THREADS:", + "(mutexes: tll=0 tsl=0 tscl=0 ghl=0)", + "", + "\"main\" prio=5 tid=1 SUSPENDED", + " | group=\"main\" sCount=1 dsCount=0 obj=0x00000001 self=0x00000001", + " | sysTid=2887 nice=0 sched=0/0 cgrp=foreground handle=0000000001", + " | schedstat=( 0 0 0 ) utm=5954 stm=1017 core=0", + " at class.method1(Class.java:1)", + " at class.method2(Class.java:2)", + " at class.method2(Class.java:2)", + ""); + + traces = new TracesParser().parse(lines); + assertEquals(2887, traces.getPid().intValue()); + assertEquals("com.android.package", traces.getApp()); + assertEquals(ArrayUtil.join("\n", expectedStack), traces.getStack()); + } } |