mirror of
https://github.com/reactos/ninja.git
synced 2025-02-22 20:52:24 +00:00
Merge pull request #1517 from chagui/1492-add-headers-to-ninja_log
#1492 add column headers to .ninja_log
This commit is contained in:
commit
4d3b315329
@ -49,6 +49,7 @@
|
||||
namespace {
|
||||
|
||||
const char kFileSignature[] = "# ninja log v%d\n";
|
||||
const char kFileColumnLabels[] = "# start_time end_time mtime command hash\n";
|
||||
const int kOldestSupportedVersion = 4;
|
||||
const int kCurrentVersion = 5;
|
||||
|
||||
@ -144,7 +145,8 @@ bool BuildLog::OpenForWrite(const string& path, const BuildLogUser& user,
|
||||
fseek(log_file_, 0, SEEK_END);
|
||||
|
||||
if (ftell(log_file_) == 0) {
|
||||
if (fprintf(log_file_, kFileSignature, kCurrentVersion) < 0) {
|
||||
if (fprintf(log_file_, kFileSignature, kCurrentVersion) < 0 ||
|
||||
fprintf(log_file_, kFileColumnLabels) < 0) {
|
||||
*err = strerror(errno);
|
||||
return false;
|
||||
}
|
||||
|
@ -70,8 +70,9 @@ TEST_F(BuildLogTest, WriteRead) {
|
||||
}
|
||||
|
||||
TEST_F(BuildLogTest, FirstWriteAddsSignature) {
|
||||
const char kExpectedVersion[] = "# ninja log vX\n";
|
||||
const size_t kVersionPos = strlen(kExpectedVersion) - 2; // Points at 'X'.
|
||||
const char kExpectedContent[] = "# ninja log vX\n"
|
||||
"# start_time end_time mtime command hash\n";
|
||||
const size_t kVersionPos = 13; // Points at 'X'.
|
||||
|
||||
BuildLog log;
|
||||
string contents, err;
|
||||
@ -84,7 +85,7 @@ TEST_F(BuildLogTest, FirstWriteAddsSignature) {
|
||||
ASSERT_EQ("", err);
|
||||
if (contents.size() >= kVersionPos)
|
||||
contents[kVersionPos] = 'X';
|
||||
EXPECT_EQ(kExpectedVersion, contents);
|
||||
EXPECT_EQ(kExpectedContent, contents);
|
||||
|
||||
// Opening the file anew shouldn't add a second version string.
|
||||
EXPECT_TRUE(log.OpenForWrite(kTestFilename, *this, &err));
|
||||
@ -96,7 +97,7 @@ TEST_F(BuildLogTest, FirstWriteAddsSignature) {
|
||||
ASSERT_EQ("", err);
|
||||
if (contents.size() >= kVersionPos)
|
||||
contents[kVersionPos] = 'X';
|
||||
EXPECT_EQ(kExpectedVersion, contents);
|
||||
EXPECT_EQ(kExpectedContent, contents);
|
||||
}
|
||||
|
||||
TEST_F(BuildLogTest, DoubleEntry) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user