From cf305def062a48c00d14d603a006a4cf4059528b Mon Sep 17 00:00:00 2001 From: Dean Lee Date: Thu, 29 Sep 2022 08:35:55 +0800 Subject: [PATCH] test_proclog: add cmdline check in buildProcLogerMessage (#25891) old-commit-hash: 2e5b50c2d7c09accaa51e954790a478b125af591 --- system/proclogd/tests/test_proclog.cc | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/system/proclogd/tests/test_proclog.cc b/system/proclogd/tests/test_proclog.cc index 230e855ac..affde2f32 100644 --- a/system/proclogd/tests/test_proclog.cc +++ b/system/proclogd/tests/test_proclog.cc @@ -140,6 +140,18 @@ TEST_CASE("buildProcLogerMessage") { REQUIRE(p.getName() == "test_proclog"); REQUIRE(p.getState() == 'R'); REQUIRE_THAT(p.getExe().cStr(), Catch::Matchers::Contains("test_proclog")); + REQUIRE(p.getCmdline().size() == 1); + REQUIRE_THAT(p.getCmdline()[0], Catch::Matchers::Contains("test_proclog")); + } else { + std::string cmd_path = "/proc/" + std::to_string(p.getPid()) + "/cmdline"; + if (util::file_exists(cmd_path)) { + std::ifstream stream(cmd_path); + auto cmdline = Parser::cmdline(stream); + REQUIRE(cmdline.size() == p.getCmdline().size()); + for (int i = 0; i < p.getCmdline().size(); ++i) { + REQUIRE(cmdline[i] == p.getCmdline()[i].cStr()); + } + } } } }