OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef BASE_TEST_GTEST_UTIL_H_ | 5 #ifndef BASE_TEST_GTEST_UTIL_H_ |
6 #define BASE_TEST_GTEST_UTIL_H_ | 6 #define BASE_TEST_GTEST_UTIL_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 #include <utility> | 9 #include <utility> |
10 #include <vector> | 10 #include <vector> |
11 | 11 |
12 #include "base/compiler_specific.h" | 12 #include "base/compiler_specific.h" |
13 | 13 |
14 namespace base { | 14 namespace base { |
15 | 15 |
16 class FilePath; | 16 class FilePath; |
17 | 17 |
18 // First value is test case name, second one is test name. | 18 struct TestIdentifier { |
19 typedef std::pair<std::string, std::string> SplitTestName; | 19 TestIdentifier(); |
| 20 |
| 21 std::string test_case_name; |
| 22 std::string test_name; |
| 23 std::string file; |
| 24 int line; |
| 25 }; |
20 | 26 |
21 // Constructs a full test name given a test case name and a test name, | 27 // Constructs a full test name given a test case name and a test name, |
22 // e.g. for test case "A" and test name "B" returns "A.B". | 28 // e.g. for test case "A" and test name "B" returns "A.B". |
23 std::string FormatFullTestName(const std::string& test_case_name, | 29 std::string FormatFullTestName(const std::string& test_case_name, |
24 const std::string& test_name); | 30 const std::string& test_name); |
25 | 31 |
26 // Returns a vector of gtest-based tests compiled into | 32 // Returns a vector of gtest-based tests compiled into |
27 // current executable. | 33 // current executable. |
28 std::vector<SplitTestName> GetCompiledInTests(); | 34 std::vector<TestIdentifier> GetCompiledInTests(); |
29 | 35 |
30 // Writes the list of gtest-based tests compiled into | 36 // Writes the list of gtest-based tests compiled into |
31 // current executable as a JSON file. Returns true on success. | 37 // current executable as a JSON file. Returns true on success. |
32 bool WriteCompiledInTestsToFile(const FilePath& path) WARN_UNUSED_RESULT; | 38 bool WriteCompiledInTestsToFile(const FilePath& path) WARN_UNUSED_RESULT; |
33 | 39 |
34 // Reads the list of gtest-based tests from |path| into |output|. | 40 // Reads the list of gtest-based tests from |path| into |output|. |
35 // Returns true on success. | 41 // Returns true on success. |
36 bool ReadTestNamesFromFile( | 42 bool ReadTestNamesFromFile( |
37 const FilePath& path, | 43 const FilePath& path, |
38 std::vector<SplitTestName>* output) WARN_UNUSED_RESULT; | 44 std::vector<TestIdentifier>* output) WARN_UNUSED_RESULT; |
39 | 45 |
40 } // namespace base | 46 } // namespace base |
41 | 47 |
42 #endif // BASE_TEST_GTEST_UTIL_H_ | 48 #endif // BASE_TEST_GTEST_UTIL_H_ |
OLD | NEW |