| OLD | NEW |
| 1 // Copyright 2006-2009 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2009 the V8 project authors. All rights reserved. |
| 2 // | 2 // |
| 3 // Tests of logging functions from log.h | 3 // Tests of logging functions from log.h |
| 4 | 4 |
| 5 #ifdef ENABLE_LOGGING_AND_PROFILING | 5 #ifdef ENABLE_LOGGING_AND_PROFILING |
| 6 | 6 |
| 7 #ifdef __linux__ | 7 #ifdef __linux__ |
| 8 #include <math.h> | 8 #include <math.h> |
| 9 #include <pthread.h> | 9 #include <pthread.h> |
| 10 #include <signal.h> | 10 #include <signal.h> |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 45 } | 45 } |
| 46 | 46 |
| 47 | 47 |
| 48 TEST(GetMessages) { | 48 TEST(GetMessages) { |
| 49 SetUp(); | 49 SetUp(); |
| 50 Logger::StringEvent("aaa", "bbb"); | 50 Logger::StringEvent("aaa", "bbb"); |
| 51 Logger::StringEvent("cccc", "dddd"); | 51 Logger::StringEvent("cccc", "dddd"); |
| 52 CHECK_EQ(0, Logger::GetLogLines(0, NULL, 0)); | 52 CHECK_EQ(0, Logger::GetLogLines(0, NULL, 0)); |
| 53 char log_lines[100]; | 53 char log_lines[100]; |
| 54 memset(log_lines, 0, sizeof(log_lines)); | 54 memset(log_lines, 0, sizeof(log_lines)); |
| 55 // Requesting data size which is smaller than first log message length. | |
| 56 CHECK_EQ(0, Logger::GetLogLines(0, log_lines, 3)); | |
| 57 // See Logger::StringEvent. | 55 // See Logger::StringEvent. |
| 58 const char* line_1 = "aaa,\"bbb\"\n"; | 56 const char* line_1 = "aaa,\"bbb\"\n"; |
| 59 const int line_1_len = StrLength(line_1); | 57 const int line_1_len = StrLength(line_1); |
| 60 // Still smaller than log message length. | |
| 61 CHECK_EQ(0, Logger::GetLogLines(0, log_lines, line_1_len - 1)); | |
| 62 // The exact size. | 58 // The exact size. |
| 63 CHECK_EQ(line_1_len, Logger::GetLogLines(0, log_lines, line_1_len)); | 59 CHECK_EQ(line_1_len, Logger::GetLogLines(0, log_lines, line_1_len)); |
| 64 CHECK_EQ(line_1, log_lines); | 60 CHECK_EQ(line_1, log_lines); |
| 65 memset(log_lines, 0, sizeof(log_lines)); | 61 memset(log_lines, 0, sizeof(log_lines)); |
| 66 // A bit more than the first line length. | 62 // A bit more than the first line length. |
| 67 CHECK_EQ(line_1_len, Logger::GetLogLines(0, log_lines, line_1_len + 3)); | 63 CHECK_EQ(line_1_len, Logger::GetLogLines(0, log_lines, line_1_len + 3)); |
| 68 log_lines[line_1_len] = '\0'; | 64 log_lines[line_1_len] = '\0'; |
| 69 CHECK_EQ(line_1, log_lines); | 65 CHECK_EQ(line_1, log_lines); |
| 70 memset(log_lines, 0, sizeof(log_lines)); | 66 memset(log_lines, 0, sizeof(log_lines)); |
| 71 const char* line_2 = "cccc,\"dddd\"\n"; | 67 const char* line_2 = "cccc,\"dddd\"\n"; |
| 72 const int line_2_len = StrLength(line_2); | 68 const int line_2_len = StrLength(line_2); |
| 73 // Now start with line_2 beginning. | 69 // Now start with line_2 beginning. |
| 74 CHECK_EQ(0, Logger::GetLogLines(line_1_len, log_lines, 0)); | 70 CHECK_EQ(0, Logger::GetLogLines(line_1_len, log_lines, 0)); |
| 75 CHECK_EQ(0, Logger::GetLogLines(line_1_len, log_lines, 3)); | |
| 76 CHECK_EQ(0, Logger::GetLogLines(line_1_len, log_lines, line_2_len - 1)); | |
| 77 CHECK_EQ(line_2_len, Logger::GetLogLines(line_1_len, log_lines, line_2_len)); | 71 CHECK_EQ(line_2_len, Logger::GetLogLines(line_1_len, log_lines, line_2_len)); |
| 78 CHECK_EQ(line_2, log_lines); | 72 CHECK_EQ(line_2, log_lines); |
| 79 memset(log_lines, 0, sizeof(log_lines)); | 73 memset(log_lines, 0, sizeof(log_lines)); |
| 80 CHECK_EQ(line_2_len, | 74 CHECK_EQ(line_2_len, |
| 81 Logger::GetLogLines(line_1_len, log_lines, line_2_len + 3)); | 75 Logger::GetLogLines(line_1_len, log_lines, line_2_len + 3)); |
| 82 CHECK_EQ(line_2, log_lines); | 76 CHECK_EQ(line_2, log_lines); |
| 83 memset(log_lines, 0, sizeof(log_lines)); | 77 memset(log_lines, 0, sizeof(log_lines)); |
| 84 // Now get entire buffer contents. | 78 // Now get entire buffer contents. |
| 85 const char* all_lines = "aaa,\"bbb\"\ncccc,\"dddd\"\n"; | 79 const char* all_lines = "aaa,\"bbb\"\ncccc,\"dddd\"\n"; |
| 86 const int all_lines_len = StrLength(all_lines); | 80 const int all_lines_len = StrLength(all_lines); |
| (...skipping 1107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1194 // Make sure that all log data is written prior crash due to CHECK failure. | 1188 // Make sure that all log data is written prior crash due to CHECK failure. |
| 1195 fflush(stdout); | 1189 fflush(stdout); |
| 1196 CHECK(results_equal); | 1190 CHECK(results_equal); |
| 1197 | 1191 |
| 1198 env->Exit(); | 1192 env->Exit(); |
| 1199 Logger::TearDown(); | 1193 Logger::TearDown(); |
| 1200 i::FLAG_always_compact = saved_always_compact; | 1194 i::FLAG_always_compact = saved_always_compact; |
| 1201 } | 1195 } |
| 1202 | 1196 |
| 1203 #endif // ENABLE_LOGGING_AND_PROFILING | 1197 #endif // ENABLE_LOGGING_AND_PROFILING |
| OLD | NEW |