Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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_TEST_SUITE_H_ | 5 #ifndef BASE_TEST_TEST_SUITE_H_ |
| 6 #define BASE_TEST_TEST_SUITE_H_ | 6 #define BASE_TEST_TEST_SUITE_H_ |
| 7 | 7 |
| 8 // Defines a basic test suite framework for running gtest based tests. You can | 8 // Defines a basic test suite framework for running gtest based tests. You can |
| 9 // instantiate this class in your main function and call its Run method to run | 9 // instantiate this class in your main function and call its Run method to run |
| 10 // any gtest based tests that are linked into your executable. | 10 // any gtest based tests that are linked into your executable. |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 52 | 52 |
| 53 // Disable crash dialogs so that it doesn't gum up the buildbot | 53 // Disable crash dialogs so that it doesn't gum up the buildbot |
| 54 virtual void SuppressErrorDialogs(); | 54 virtual void SuppressErrorDialogs(); |
| 55 | 55 |
| 56 // Override these for custom initialization and shutdown handling. Use these | 56 // Override these for custom initialization and shutdown handling. Use these |
| 57 // instead of putting complex code in your constructor/destructor. | 57 // instead of putting complex code in your constructor/destructor. |
| 58 | 58 |
| 59 virtual void Initialize(); | 59 virtual void Initialize(); |
| 60 virtual void Shutdown(); | 60 virtual void Shutdown(); |
| 61 | 61 |
| 62 // Sets up a TestEventListener to shadow the at_exit_manager_ between each | |
| 63 // individual test. Broken test suites can override this method to disable | |
| 64 // this behavior until they can be fixed. | |
| 65 virtual void EnableSingletonTestIsolation(); | |
|
jam
2013/05/07 18:09:57
i highly suggest not adding this method, i.e. not
Robert Sesek
2013/05/07 18:12:29
Good point. Done.
| |
| 66 | |
| 62 // Make sure that we setup an AtExitManager so Singleton objects will be | 67 // Make sure that we setup an AtExitManager so Singleton objects will be |
| 63 // destroyed. | 68 // destroyed. |
| 64 scoped_ptr<base::AtExitManager> at_exit_manager_; | 69 scoped_ptr<base::AtExitManager> at_exit_manager_; |
| 65 | 70 |
| 66 private: | 71 private: |
| 67 // Basic initialization for the test suite happens here. | 72 // Basic initialization for the test suite happens here. |
| 68 void PreInitialize(int argc, char** argv, bool create_at_exit_manager); | 73 void PreInitialize(int argc, char** argv, bool create_at_exit_manager); |
| 69 | 74 |
| 70 bool initialized_command_line_; | 75 bool initialized_command_line_; |
| 71 | 76 |
| 72 DISALLOW_COPY_AND_ASSIGN(TestSuite); | 77 DISALLOW_COPY_AND_ASSIGN(TestSuite); |
| 73 }; | 78 }; |
| 74 | 79 |
| 75 } // namespace base | 80 } // namespace base |
| 76 | 81 |
| 77 // TODO(brettw) remove this. This is a temporary hack to allow WebKit to compile | 82 // TODO(brettw) remove this. This is a temporary hack to allow WebKit to compile |
| 78 // until we can update it to use "base::" (preventing a two-sided patch). | 83 // until we can update it to use "base::" (preventing a two-sided patch). |
| 79 using base::TestSuite; | 84 using base::TestSuite; |
| 80 | 85 |
| 81 #endif // BASE_TEST_TEST_SUITE_H_ | 86 #endif // BASE_TEST_TEST_SUITE_H_ |
| OLD | NEW |