Chromium Code Reviews| Index: metrics_daemon_test.cc |
| diff --git a/metrics_daemon_test.cc b/metrics_daemon_test.cc |
| index 208d8e5bffae1cb6fa2c23a1bbf6df36794e1f03..fca08e888869c943e8f4911e0a2d93e2457d06b4 100644 |
| --- a/metrics_daemon_test.cc |
| +++ b/metrics_daemon_test.cc |
| @@ -27,6 +27,7 @@ using std::vector; |
| using ::testing::_; |
| using ::testing::Return; |
| using ::testing::StrictMock; |
| +using ::testing::AtLeast; |
| static const int kSecondsPerDay = 24 * 60 * 60; |
| @@ -578,6 +579,62 @@ TEST_F(MetricsDaemonTest, ReportDiskStats) { |
| EXPECT_TRUE(ds_state != daemon_.diskstats_state_); |
| } |
| +TEST_F(MetricsDaemonTest, ProcessMeminfo) { |
| + const char* meminfo = "\ |
| +MemTotal: 2000000 kB\n\ |
| +MemFree: 1000000 kB\n\ |
| +Buffers: 10492 kB\n\ |
| +Cached: 213652 kB\n\ |
| +SwapCached: 0 kB\n\ |
| +Active: 133400 kB\n\ |
| +Inactive: 183396 kB\n\ |
| +Active(anon): 92984 kB\n\ |
| +Inactive(anon): 58860 kB\n\ |
| +Active(file): 40416 kB\n\ |
| +Inactive(file): 124536 kB\n\ |
| +Unevictable: 0 kB\n\ |
| +Mlocked: 0 kB\n\ |
| +SwapTotal: 0 kB\n\ |
| +SwapFree: 0 kB\n\ |
| +Dirty: 40 kB\n\ |
| +Writeback: 0 kB\n\ |
| +AnonPages: 92652 kB\n\ |
| +Mapped: 59716 kB\n\ |
| +Shmem: 59196 kB\n\ |
| +Slab: 16656 kB\n\ |
| +SReclaimable: 6132 kB\n\ |
| +SUnreclaim: 10524 kB\n\ |
| +KernelStack: 1648 kB\n\ |
| +PageTables: 2780 kB\n\ |
| +NFS_Unstable: 0 kB\n\ |
| +Bounce: 0 kB\n\ |
| +WritebackTmp: 0 kB\n\ |
| +CommitLimit: 970656 kB\n\ |
| +Committed_AS: 1260528 kB\n\ |
|
kmixter1
2011/04/08 23:04:05
Might be nice to check at least one of these numbe
Luigi Semenzato
2011/04/11 16:28:26
I added a check that one number is parsed correctl
|
| +VmallocTotal: 122880 kB\n\ |
| +VmallocUsed: 12144 kB\n\ |
| +VmallocChunk: 103824 kB\n\ |
| +DirectMap4k: 9636 kB\n\ |
| +DirectMap2M: 1955840 kB\n\ |
| +"; |
| + EXPECT_CALL(metrics_lib_, SendEnumToUMA(_, _, 100)) |
| + .Times(AtLeast(1)); |
| + EXPECT_CALL(metrics_lib_, SendToUMA(_, _, _, _, _)) |
| + .Times(AtLeast(1)); |
| + EXPECT_TRUE(daemon_.ProcessMeminfo(meminfo)); |
| +} |
| + |
| +TEST_F(MetricsDaemonTest, ProcessMeminfo2) { |
| + const char* meminfo = "\ |
| +MemTotal: 2000000 kB\n\ |
| +MemFree: 1000000 kB\n\ |
| +"; |
| + /* Not enough fields */ |
| + EXPECT_CALL(metrics_lib_, SendEnumToUMA(_, _, 100)) |
| + .Times(AtLeast(1)); |
| + EXPECT_FALSE(daemon_.ProcessMeminfo(meminfo)); |
| +} |
| + |
| int main(int argc, char** argv) { |
| testing::InitGoogleTest(&argc, argv); |
| return RUN_ALL_TESTS(); |