summaryrefslogtreecommitdiff
path: root/javatests/com/android/loganalysis/parser/DmesgParserTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'javatests/com/android/loganalysis/parser/DmesgParserTest.java')
-rw-r--r--javatests/com/android/loganalysis/parser/DmesgParserTest.java38
1 files changed, 35 insertions, 3 deletions
diff --git a/javatests/com/android/loganalysis/parser/DmesgParserTest.java b/javatests/com/android/loganalysis/parser/DmesgParserTest.java
index e4ea7af..a7705e3 100644
--- a/javatests/com/android/loganalysis/parser/DmesgParserTest.java
+++ b/javatests/com/android/loganalysis/parser/DmesgParserTest.java
@@ -50,6 +50,8 @@ public class DmesgParserTest extends TestCase {
"[ 1.115467] init: Loaded 198 kernel modules took 748 ms",
"[ 2.471163] init: Wait for property 'apexd.status=ready' took 403ms",
"[ 3.786943] ueventd: Coldboot took 0.701291 seconds",
+ "[ 4.295667] init: Command 'mount_all --late' action=late-fs "
+ + "/vendor/etc/init/hw/init.rc:347) took 250ms and succeeded",
"[ 22.962730] init: starting service 'bootanim'...",
"[ 23.252321] init: starting service 'netd'...",
"[ 29.331069] ipa-wan ipa_wwan_ioctl:1428 dev(rmnet_data0) register to IPA",
@@ -113,7 +115,9 @@ public class DmesgParserTest extends TestCase {
assertEquals("Service info items list size should be 2", 2,
dmesgParser.getServiceInfoItems().size());
- assertEquals("Stage info items list size should be 3",3,
+ assertEquals(
+ "Stage info items list size should be 4",
+ 4,
dmesgParser.getStageInfoItems().size());
assertEquals("Action info items list size should be 9",9,
dmesgParser.getActionInfoItems().size());
@@ -138,7 +142,9 @@ public class DmesgParserTest extends TestCase {
dmesgParser.parseInfo(bufferedReader);
assertEquals("Service info items list size should be 2", 2,
dmesgParser.getServiceInfoItems().size());
- assertEquals("Stage info items list size should be 3", 3,
+ assertEquals(
+ "Stage info items list size should be 4",
+ 4,
dmesgParser.getStageInfoItems().size());
assertEquals("Action info items list size should be 9",9,
dmesgParser.getActionInfoItems().size());
@@ -214,6 +220,31 @@ public class DmesgParserTest extends TestCase {
assertEquals("No service info should be available", 0, serviceInfoItems.size());
}
+ public void testCompleteStageInfo_onKernel_5_15() {
+ DmesgParser dmesgParser = new DmesgParser();
+ String[] lines =
+ new String[] {
+ "[ 0.370107] [@2 init][....] init: Loading module /lib/modules/foo.ko "
+ + "with args ''",
+ "[ 0.372497] [@2 init][....] init: Loaded kernel module /lib/modules/foo.ko",
+ "[ 0.372500] [@2 init][....] init: Loading module /lib/modules/bar.ko "
+ + "with args ''",
+ "[ 1.115467] [@2 init][....] init: Loaded 198 kernel modules took 748 ms",
+ "[ 2.471163] [@2 init][....] init: Wait for property 'apexd.status=ready' "
+ + "took 403ms",
+ "[ 3.786943] [@2 init][....] ueventd: Coldboot took 0.701291 seconds",
+ "[ 4.295667] [@2 init][....] init: Command 'mount_all --late' action=late-fs"
+ + " /vendor/etc/init/hw/init.rc:347) took 250ms and succeeded",
+ "[ 41.665818] [@2 init][....] init: init first stage started!"
+ };
+ for (String line : lines) {
+ dmesgParser.parseStageInfo(line);
+ }
+ List<DmesgStageInfoItem> stageInfoItems = dmesgParser.getStageInfoItems();
+ assertEquals(4, stageInfoItems.size());
+ assertEquals(EXPECTED_STAGE_INFO_ITEMS, stageInfoItems);
+ }
+
/**
* Test init stages' start time logs
*/
@@ -223,7 +254,7 @@ public class DmesgParserTest extends TestCase {
dmesgParser.parseStageInfo(line);
}
List<DmesgStageInfoItem> stageInfoItems = dmesgParser.getStageInfoItems();
- assertEquals(3, stageInfoItems.size());
+ assertEquals(4, stageInfoItems.size());
assertEquals(EXPECTED_STAGE_INFO_ITEMS, stageInfoItems);
}
@@ -272,6 +303,7 @@ public class DmesgParserTest extends TestCase {
return Arrays.asList(
new DmesgStageInfoItem("init_Wait for property 'apexd.status=ready'", null, 403L),
new DmesgStageInfoItem("ueventd_Coldboot", null, 701L),
+ new DmesgStageInfoItem("init_mount_all_late", null, 250L),
new DmesgStageInfoItem("first", 41665L, null));
}