diff options
-rw-r--r-- | simpleperf/cmd_record_test.cpp | 17 | ||||
-rw-r--r-- | simpleperf/cmd_stat_test.cpp | 5 |
2 files changed, 18 insertions, 4 deletions
diff --git a/simpleperf/cmd_record_test.cpp b/simpleperf/cmd_record_test.cpp index c3f9cb40..e942332f 100644 --- a/simpleperf/cmd_record_test.cpp +++ b/simpleperf/cmd_record_test.cpp @@ -391,12 +391,21 @@ TEST(record_cmd, support_modifier_for_clock_events) { TEST(record_cmd, handle_SIGHUP) { TemporaryFile tmpfile; - std::thread thread([]() { - sleep(1); + int pipefd[2]; + ASSERT_EQ(0, pipe(pipefd)); + int read_fd = pipefd[0]; + int write_fd = pipefd[1]; + char data[8] = {}; + std::thread thread([&]() { + android::base::ReadFully(read_fd, data, 7); kill(getpid(), SIGHUP); }); - thread.detach(); - ASSERT_TRUE(RecordCmd()->Run({"-o", tmpfile.path, "sleep", "1000000"})); + ASSERT_TRUE(RecordCmd()->Run({"-o", tmpfile.path, "--start_profiling_fd", + std::to_string(write_fd), "sleep", "1000000"})); + thread.join(); + close(write_fd); + close(read_fd); + ASSERT_STREQ(data, "STARTED"); } TEST(record_cmd, stop_when_no_more_targets) { diff --git a/simpleperf/cmd_stat_test.cpp b/simpleperf/cmd_stat_test.cpp index 3cdb4ebd..3876b420 100644 --- a/simpleperf/cmd_stat_test.cpp +++ b/simpleperf/cmd_stat_test.cpp @@ -157,6 +157,11 @@ TEST(stat_cmd, no_modifier_for_clock_events) { } TEST(stat_cmd, handle_SIGHUP) { + if (!GetDefaultAppPackageName().empty()) { + // See http://b/79495636. + GTEST_LOG_(INFO) << "Omit this test in app's context."; + return; + } std::thread thread([]() { sleep(1); kill(getpid(), SIGHUP); |