diff options
author | dmichael@chromium.org <dmichael@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-11-08 22:37:28 +0000 |
---|---|---|
committer | dmichael@chromium.org <dmichael@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-11-08 22:37:28 +0000 |
commit | 3f364cbe2565b02b0cf24e09b65638e40d352697 (patch) | |
tree | 1fbd0d1fbd640f337bc5827a82fa50b0bb637cb9 /ppapi/tests/testing_instance.h | |
parent | 0368e3967bd1b3191257895cfc4a042b01980525 (diff) | |
download | chromium_src-3f364cbe2565b02b0cf24e09b65638e40d352697.zip chromium_src-3f364cbe2565b02b0cf24e09b65638e40d352697.tar.gz chromium_src-3f364cbe2565b02b0cf24e09b65638e40d352697.tar.bz2 |
Make it possible to enable/disable specific ppapi tests. Migrate PostMessage tests.
Most of these files were changed by a sed script, so it's not as bad as it looks.
The testcase attribute now can include a 'filter'. If it's omitted, everything works the same as before. This way we can migrate tests over bit-by-bit if we want to. We can also still run the tests manually the same way as before.
This only runs PostMessage testss the new way, and re-enables all oop PostMessage tests that pass on Windows. I can do the other tests in this CL if desired, but it might be easier to land in a few pieces.
BUG=102885,95557
TEST=N/A
Review URL: http://codereview.chromium.org/8477015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109114 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ppapi/tests/testing_instance.h')
-rw-r--r-- | ppapi/tests/testing_instance.h | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/ppapi/tests/testing_instance.h b/ppapi/tests/testing_instance.h index 0c79923..8f6b7b1 100644 --- a/ppapi/tests/testing_instance.h +++ b/ppapi/tests/testing_instance.h @@ -87,8 +87,18 @@ pp::InstancePrivate { void ExecuteTests(int32_t unused); // Creates a new TestCase for the give test name, or NULL if there is no such - // test. Ownership is passed to the caller. - TestCase* CaseForTestName(const char* name); + // test. Ownership is passed to the caller. The given string is split by '_'. + // The test case name is the first part. + TestCase* CaseForTestName(const std::string& name); + // Returns the filter (second part) of the given string. If there is no '_', + // returns the empty string, which means 'run all tests for this test case'. + // E.g.: + // http://testserver/test_case.html?testcase=PostMessage + // Otherwise, the part of the testcase after '_' is returned, and the test + // whose name matches that string (if any) will be run: + // http://testserver/test_case.html?testcase=PostMessage_SendingData + // Runs 'PostMessage_SendingData. + std::string FilterForTestName(const std::string& name); // Appends a list of available tests to the console in the document. void LogAvailableTests(); @@ -109,6 +119,10 @@ pp::InstancePrivate { // Owning pointer to the current test case. Valid after Init has been called. TestCase* current_case_; + // A filter to use when running tests. This is passed to 'RunTests', which + // runs only tests whose name contains test_filter_ as a substring. + std::string test_filter_; + // The current step we're on starting at 0. This is incremented every time we // report progress via a cookie. See comment above the class. int progress_cookie_number_; |