summaryrefslogtreecommitdiffstats
path: root/ppapi/tests/testing_instance.h
diff options
context:
space:
mode:
authordmichael@chromium.org <dmichael@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-11-08 22:37:28 +0000
committerdmichael@chromium.org <dmichael@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-11-08 22:37:28 +0000
commit3f364cbe2565b02b0cf24e09b65638e40d352697 (patch)
tree1fbd0d1fbd640f337bc5827a82fa50b0bb637cb9 /ppapi/tests/testing_instance.h
parent0368e3967bd1b3191257895cfc4a042b01980525 (diff)
downloadchromium_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.h18
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_;