summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorMaxim Siniavine <siniavine@google.com>2015-03-30 16:08:36 -0700
committerMaxim Siniavine <siniavine@google.com>2015-03-30 16:08:36 -0700
commitce2941c2e70b3444824f0cfe2883f4b77ad93542 (patch)
treecbdbe8e688a0a72b52fc997ece5f0326972fec98 /tests
parent3c61512f540ec74f0ebda2567725b445f7c873f5 (diff)
downloadloganalysis-ce2941c2e70b3444824f0cfe2883f4b77ad93542.tar.gz
Generate a kernel reset event if reboot reson could not be determined.
BUG: 19963847 Change-Id: I9e380ecba32313e1f423b5af192acf0010487730
Diffstat (limited to 'tests')
-rw-r--r--tests/src/com/android/loganalysis/parser/KernelLogParserTest.java36
1 files changed, 35 insertions, 1 deletions
diff --git a/tests/src/com/android/loganalysis/parser/KernelLogParserTest.java b/tests/src/com/android/loganalysis/parser/KernelLogParserTest.java
index 890a196..0f554ec 100644
--- a/tests/src/com/android/loganalysis/parser/KernelLogParserTest.java
+++ b/tests/src/com/android/loganalysis/parser/KernelLogParserTest.java
@@ -96,6 +96,40 @@ public class KernelLogParserTest extends TestCase {
}
/**
+ * Test that unknown last boot reasons are parsed.
+ */
+ public void testParseUnknownLastMessage() {
+ List<String> lines = Arrays.asList(
+ "[ 0.000000] Start",
+ "[ 2.000000] End",
+ "Last boot reason: unknown failure");
+
+ KernelLogItem kernelLog = new KernelLogParser().parse(lines);
+ assertNotNull(kernelLog);
+ assertEquals(0.0, kernelLog.getStartTime(), 0.0000005);
+ assertEquals(2.0, kernelLog.getStopTime(), 0.0000005);
+ assertEquals(1, kernelLog.getEvents().size());
+ assertEquals(1, kernelLog.getMiscEvents(KernelLogParser.KERNEL_RESET).size());
+
+ MiscKernelLogItem item = kernelLog.getMiscEvents(KernelLogParser.KERNEL_RESET).get(0);
+ assertEquals(2.0, item.getEventTime(), 0.0000005);
+ assertEquals("[ 0.000000] Start\n[ 2.000000] End", item.getPreamble());
+ }
+
+ public void testParseKnownGoodLastMessage() {
+ List<String> lines = Arrays.asList(
+ "[ 0.000000] Start",
+ "[ 2.000000] End",
+ "Last boot reason: reboot");
+
+ KernelLogItem kernelLog = new KernelLogParser().parse(lines);
+ assertNotNull(kernelLog);
+ assertEquals(0.0, kernelLog.getStartTime(), 0.0000005);
+ assertEquals(2.0, kernelLog.getStopTime(), 0.0000005);
+ assertEquals(0, kernelLog.getEvents().size());
+ }
+
+ /**
* Test that reset reasons don't crash if times are set.
*/
public void testNoPreviousLogs() {
@@ -183,7 +217,7 @@ public class KernelLogParserTest extends TestCase {
assertNotNull(kernelLog);
assertEquals(0.0, kernelLog.getStartTime(), 0.0000005);
assertEquals(43.399164, kernelLog.getStopTime(), 0.0000005);
- assertEquals(1, kernelLog.getEvents().size());
+ assertEquals(2, kernelLog.getEvents().size());
assertEquals(1, kernelLog.getMiscEvents(KernelLogParser.SELINUX_DENIAL).size());
assertEquals(1, kernelLog.getSELinuxEvents().size());