Merge "logcat: test: report system(command) details"
am: 5980fe4aff
Change-Id: I63c8b1d3f21b280023c4a8536c49cfa588f522f9
This commit is contained in:
commit
811696b1ce
1 changed files with 29 additions and 20 deletions
|
|
@ -570,6 +570,14 @@ TEST(logcat, blocking_tail) {
|
||||||
EXPECT_EQ(1, signals);
|
EXPECT_EQ(1, signals);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// meant to be handed to ASSERT_FALSE / EXPECT_FALSE to expand the message
|
||||||
|
static testing::AssertionResult IsFalse(int ret, const char* command) {
|
||||||
|
return ret ?
|
||||||
|
(testing::AssertionSuccess() <<
|
||||||
|
"ret=" << ret << " command=\"" << command << "\"") :
|
||||||
|
testing::AssertionFailure();
|
||||||
|
}
|
||||||
|
|
||||||
TEST(logcat, logrotate) {
|
TEST(logcat, logrotate) {
|
||||||
static const char form[] = "/data/local/tmp/logcat.logrotate.XXXXXX";
|
static const char form[] = "/data/local/tmp/logcat.logrotate.XXXXXX";
|
||||||
char buf[sizeof(form)];
|
char buf[sizeof(form)];
|
||||||
|
|
@ -581,7 +589,7 @@ TEST(logcat, logrotate) {
|
||||||
snprintf(command, sizeof(command), comm, buf);
|
snprintf(command, sizeof(command), comm, buf);
|
||||||
|
|
||||||
int ret;
|
int ret;
|
||||||
EXPECT_FALSE((ret = system(command)));
|
EXPECT_FALSE(IsFalse(ret = system(command), command));
|
||||||
if (!ret) {
|
if (!ret) {
|
||||||
snprintf(command, sizeof(command), "ls -s %s 2>/dev/null", buf);
|
snprintf(command, sizeof(command), "ls -s %s 2>/dev/null", buf);
|
||||||
|
|
||||||
|
|
@ -611,7 +619,7 @@ TEST(logcat, logrotate) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
snprintf(command, sizeof(command), "rm -rf %s", buf);
|
snprintf(command, sizeof(command), "rm -rf %s", buf);
|
||||||
EXPECT_FALSE(system(command));
|
EXPECT_FALSE(IsFalse(system(command), command));
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST(logcat, logrotate_suffix) {
|
TEST(logcat, logrotate_suffix) {
|
||||||
|
|
@ -625,7 +633,7 @@ TEST(logcat, logrotate_suffix) {
|
||||||
snprintf(command, sizeof(command), logcat_cmd, tmp_out_dir);
|
snprintf(command, sizeof(command), logcat_cmd, tmp_out_dir);
|
||||||
|
|
||||||
int ret;
|
int ret;
|
||||||
EXPECT_FALSE((ret = system(command)));
|
EXPECT_FALSE(IsFalse(ret = system(command), command));
|
||||||
if (!ret) {
|
if (!ret) {
|
||||||
snprintf(command, sizeof(command), "ls %s 2>/dev/null", tmp_out_dir);
|
snprintf(command, sizeof(command), "ls %s 2>/dev/null", tmp_out_dir);
|
||||||
|
|
||||||
|
|
@ -664,7 +672,7 @@ TEST(logcat, logrotate_suffix) {
|
||||||
EXPECT_EQ(11, log_file_count);
|
EXPECT_EQ(11, log_file_count);
|
||||||
}
|
}
|
||||||
snprintf(command, sizeof(command), "rm -rf %s", tmp_out_dir);
|
snprintf(command, sizeof(command), "rm -rf %s", tmp_out_dir);
|
||||||
EXPECT_FALSE(system(command));
|
EXPECT_FALSE(IsFalse(system(command), command));
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST(logcat, logrotate_continue) {
|
TEST(logcat, logrotate_continue) {
|
||||||
|
|
@ -679,10 +687,10 @@ TEST(logcat, logrotate_continue) {
|
||||||
snprintf(command, sizeof(command), logcat_cmd, tmp_out_dir, log_filename);
|
snprintf(command, sizeof(command), logcat_cmd, tmp_out_dir, log_filename);
|
||||||
|
|
||||||
int ret;
|
int ret;
|
||||||
EXPECT_FALSE((ret = system(command)));
|
EXPECT_FALSE(IsFalse(ret = system(command), command));
|
||||||
if (ret) {
|
if (ret) {
|
||||||
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
||||||
EXPECT_FALSE(system(command));
|
EXPECT_FALSE(IsFalse(system(command), command));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
FILE *fp;
|
FILE *fp;
|
||||||
|
|
@ -690,7 +698,7 @@ TEST(logcat, logrotate_continue) {
|
||||||
EXPECT_TRUE(NULL != ((fp = fopen(command, "r"))));
|
EXPECT_TRUE(NULL != ((fp = fopen(command, "r"))));
|
||||||
if (!fp) {
|
if (!fp) {
|
||||||
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
||||||
EXPECT_FALSE(system(command));
|
EXPECT_FALSE(IsFalse(system(command), command));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
char *line = NULL;
|
char *line = NULL;
|
||||||
|
|
@ -714,23 +722,23 @@ TEST(logcat, logrotate_continue) {
|
||||||
EXPECT_TRUE(NULL != second_last_line);
|
EXPECT_TRUE(NULL != second_last_line);
|
||||||
if (!second_last_line) {
|
if (!second_last_line) {
|
||||||
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
||||||
EXPECT_FALSE(system(command));
|
EXPECT_FALSE(IsFalse(system(command), command));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
// re-run the command, it should only add a few lines more content if it
|
// re-run the command, it should only add a few lines more content if it
|
||||||
// continues where it left off.
|
// continues where it left off.
|
||||||
snprintf(command, sizeof(command), logcat_cmd, tmp_out_dir, log_filename);
|
snprintf(command, sizeof(command), logcat_cmd, tmp_out_dir, log_filename);
|
||||||
EXPECT_FALSE((ret = system(command)));
|
EXPECT_FALSE(IsFalse(ret = system(command), command));
|
||||||
if (ret) {
|
if (ret) {
|
||||||
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
||||||
EXPECT_FALSE(system(command));
|
EXPECT_FALSE(IsFalse(system(command), command));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
std::unique_ptr<DIR, decltype(&closedir)> dir(opendir(tmp_out_dir), closedir);
|
std::unique_ptr<DIR, decltype(&closedir)> dir(opendir(tmp_out_dir), closedir);
|
||||||
EXPECT_NE(nullptr, dir);
|
EXPECT_NE(nullptr, dir);
|
||||||
if (!dir) {
|
if (!dir) {
|
||||||
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
||||||
EXPECT_FALSE(system(command));
|
EXPECT_FALSE(IsFalse(system(command), command));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
struct dirent *entry;
|
struct dirent *entry;
|
||||||
|
|
@ -769,7 +777,7 @@ TEST(logcat, logrotate_continue) {
|
||||||
free(second_last_line);
|
free(second_last_line);
|
||||||
|
|
||||||
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
||||||
EXPECT_FALSE(system(command));
|
EXPECT_FALSE(IsFalse(system(command), command));
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST(logcat, logrotate_clear) {
|
TEST(logcat, logrotate_clear) {
|
||||||
|
|
@ -790,17 +798,17 @@ TEST(logcat, logrotate_clear) {
|
||||||
logcat_cmd, tmp_out_dir, log_filename, num_val);
|
logcat_cmd, tmp_out_dir, log_filename, num_val);
|
||||||
|
|
||||||
int ret;
|
int ret;
|
||||||
EXPECT_FALSE((ret = system(command)));
|
EXPECT_FALSE(IsFalse(ret = system(command), command));
|
||||||
if (ret) {
|
if (ret) {
|
||||||
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
||||||
EXPECT_FALSE(system(command));
|
EXPECT_FALSE(IsFalse(system(command), command));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
std::unique_ptr<DIR, decltype(&closedir)> dir(opendir(tmp_out_dir), closedir);
|
std::unique_ptr<DIR, decltype(&closedir)> dir(opendir(tmp_out_dir), closedir);
|
||||||
EXPECT_NE(nullptr, dir);
|
EXPECT_NE(nullptr, dir);
|
||||||
if (!dir) {
|
if (!dir) {
|
||||||
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
||||||
EXPECT_FALSE(system(command));
|
EXPECT_FALSE(IsFalse(system(command), command));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
struct dirent *entry;
|
struct dirent *entry;
|
||||||
|
|
@ -819,17 +827,18 @@ TEST(logcat, logrotate_clear) {
|
||||||
strcat(command, clear_cmd);
|
strcat(command, clear_cmd);
|
||||||
|
|
||||||
int ret;
|
int ret;
|
||||||
EXPECT_FALSE((ret = system(command)));
|
EXPECT_FALSE(IsFalse(ret = system(command), command));
|
||||||
if (ret) {
|
if (ret) {
|
||||||
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
||||||
EXPECT_FALSE(system(command));
|
EXPECT_FALSE(system(command));
|
||||||
|
EXPECT_FALSE(IsFalse(system(command), command));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
std::unique_ptr<DIR, decltype(&closedir)> dir(opendir(tmp_out_dir), closedir);
|
std::unique_ptr<DIR, decltype(&closedir)> dir(opendir(tmp_out_dir), closedir);
|
||||||
EXPECT_NE(nullptr, dir);
|
EXPECT_NE(nullptr, dir);
|
||||||
if (!dir) {
|
if (!dir) {
|
||||||
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
||||||
EXPECT_FALSE(system(command));
|
EXPECT_FALSE(IsFalse(system(command), command));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
struct dirent *entry;
|
struct dirent *entry;
|
||||||
|
|
@ -845,7 +854,7 @@ TEST(logcat, logrotate_clear) {
|
||||||
}
|
}
|
||||||
|
|
||||||
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
||||||
EXPECT_FALSE(system(command));
|
EXPECT_FALSE(IsFalse(system(command), command));
|
||||||
}
|
}
|
||||||
|
|
||||||
static int logrotate_count_id(const char *logcat_cmd, const char *tmp_out_dir) {
|
static int logrotate_count_id(const char *logcat_cmd, const char *tmp_out_dir) {
|
||||||
|
|
@ -856,7 +865,7 @@ static int logrotate_count_id(const char *logcat_cmd, const char *tmp_out_dir) {
|
||||||
snprintf(command, sizeof(command), logcat_cmd, tmp_out_dir, log_filename);
|
snprintf(command, sizeof(command), logcat_cmd, tmp_out_dir, log_filename);
|
||||||
|
|
||||||
int ret;
|
int ret;
|
||||||
EXPECT_FALSE((ret = system(command)));
|
EXPECT_FALSE(IsFalse(ret = system(command), command));
|
||||||
if (ret) {
|
if (ret) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
@ -914,7 +923,7 @@ TEST(logcat, logrotate_id) {
|
||||||
static const char cleanup_cmd[] = "rm -rf %s";
|
static const char cleanup_cmd[] = "rm -rf %s";
|
||||||
char command[strlen(cleanup_cmd) + strlen(tmp_out_dir_form)];
|
char command[strlen(cleanup_cmd) + strlen(tmp_out_dir_form)];
|
||||||
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
snprintf(command, sizeof(command), cleanup_cmd, tmp_out_dir);
|
||||||
EXPECT_FALSE(system(command));
|
EXPECT_FALSE(IsFalse(system(command), command));
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST(logcat, logrotate_nodir) {
|
TEST(logcat, logrotate_nodir) {
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue