| // Copyright 2021 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "ash/system/diagnostics/log_test_helpers.h" |
| |
| #include <string> |
| #include <vector> |
| |
| #include "testing/gtest/include/gtest/gtest.h" |
| |
| namespace ash { |
| namespace diagnostics { |
| |
| class LogHelpersTest : public testing::Test { |
| public: |
| LogHelpersTest() = default; |
| |
| ~LogHelpersTest() override = default; |
| }; |
| |
| TEST_F(LogHelpersTest, GetLogLineContents) { |
| const std::string log_line = "02:26:18.766 - RoutineType::kMemory - Started"; |
| const std::vector<std::string> actual_log_lines = |
| GetLogLineContents(log_line); |
| ASSERT_EQ(3u, actual_log_lines.size()); |
| ASSERT_EQ("02:26:18.766", actual_log_lines[0]); |
| ASSERT_EQ("RoutineType::kMemory", actual_log_lines[1]); |
| ASSERT_EQ("Started", actual_log_lines[2]); |
| |
| const std::string log_line_no_separator = |
| "02:26:18.766 RoutineType::kMemory Started"; |
| const std::vector<std::string> actual_log_lines_no_separator = |
| GetLogLineContents(log_line_no_separator); |
| ASSERT_EQ(1u, actual_log_lines_no_separator.size()); |
| ASSERT_EQ("02:26:18.766 RoutineType::kMemory Started", |
| actual_log_lines_no_separator[0]); |
| } |
| |
| TEST_F(LogHelpersTest, GetLogLines) { |
| const std::string log_lines = |
| "02:26:18.766 - RoutineType::kMemory - Started \n 02:26:18.766 - " |
| "RoutineType::kMemory - Completed \n"; |
| const std::vector<std::string> actual_log_lines = GetLogLines(log_lines); |
| ASSERT_EQ(2u, actual_log_lines.size()); |
| ASSERT_EQ("02:26:18.766 - RoutineType::kMemory - Started", |
| actual_log_lines[0]); |
| ASSERT_EQ("02:26:18.766 - RoutineType::kMemory - Completed", |
| actual_log_lines[1]); |
| |
| const std::string log_lines_no_newline = |
| "02:26:18.766 - RoutineType::kMemory - Started 02:26:18.766 - " |
| "RoutineType::kMemory - Completed"; |
| const std::vector<std::string> actual_log_lines_no_newline = |
| GetLogLines(log_lines_no_newline); |
| ASSERT_EQ(1u, actual_log_lines_no_newline.size()); |
| ASSERT_EQ( |
| "02:26:18.766 - RoutineType::kMemory - Started 02:26:18.766 - " |
| "RoutineType::kMemory - Completed", |
| actual_log_lines_no_newline[0]); |
| } |
| |
| } // namespace diagnostics |
| } // namespace ash |