Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 #include "base/file_util.h" | 5 #include "base/file_util.h" |
| 6 #include "base/path_service.h" | 6 #include "base/path_service.h" |
| 7 #include "base/test/test_timeouts.h" | 7 #include "base/test/test_timeouts.h" |
| 8 #include "build/build_config.h" | 8 #include "build/build_config.h" |
| 9 #include "content/browser/plugin_service.h" | |
| 9 #include "content/public/common/content_switches.h" | 10 #include "content/public/common/content_switches.h" |
| 11 #include "content/common/pepper_plugin_registry.h" | |
| 12 #include "chrome/common/chrome_paths.h" | |
| 10 #include "chrome/common/chrome_switches.h" | 13 #include "chrome/common/chrome_switches.h" |
| 11 #include "chrome/test/automation/tab_proxy.h" | 14 #include "chrome/test/automation/tab_proxy.h" |
| 12 #include "chrome/test/ui/ui_test.h" | 15 #include "chrome/test/ui/ui_test.h" |
| 13 #include "net/base/net_util.h" | 16 #include "net/base/net_util.h" |
| 14 #include "net/test/test_server.h" | 17 #include "net/test/test_server.h" |
| 15 #include "webkit/plugins/plugin_switches.h" | 18 #include "webkit/plugins/plugin_switches.h" |
| 16 | 19 |
| 20 #include <iostream> | |
| 21 | |
| 17 namespace { | 22 namespace { |
| 18 | 23 |
| 19 // Platform-specific filename relative to the chrome executable. | 24 // Platform-specific filename relative to the chrome executable. |
| 20 #if defined(OS_WIN) | 25 #if defined(OS_WIN) |
| 21 const wchar_t library_name[] = L"ppapi_tests.dll"; | 26 const wchar_t library_name[] = L"ppapi_tests.dll"; |
| 22 #elif defined(OS_MACOSX) | 27 #elif defined(OS_MACOSX) |
| 23 const char library_name[] = "ppapi_tests.plugin"; | 28 const char library_name[] = "ppapi_tests.plugin"; |
| 24 #elif defined(OS_POSIX) | 29 #elif defined(OS_POSIX) |
| 25 const char library_name[] = "libppapi_tests.so"; | 30 const char library_name[] = "libppapi_tests.so"; |
| 26 #endif | 31 #endif |
| 27 | 32 |
| 28 } // namespace | 33 } // namespace |
| 29 | 34 |
| 30 // In-process plugin test runner. See OutOfProcessPPAPITest below for the | 35 class PPAPITestBase : public UITest { |
| 31 // out-of-process version. | |
| 32 class PPAPITest : public UITest { | |
| 33 public: | 36 public: |
| 34 PPAPITest() { | 37 PPAPITestBase() { |
| 35 // Append the switch to register the pepper plugin. | |
| 36 // library name = <out dir>/<test_name>.<library_extension> | |
| 37 // MIME type = application/x-ppapi-<test_name> | |
| 38 FilePath plugin_dir; | |
| 39 PathService::Get(base::DIR_EXE, &plugin_dir); | |
| 40 | |
| 41 FilePath plugin_lib = plugin_dir.Append(library_name); | |
| 42 EXPECT_TRUE(file_util::PathExists(plugin_lib)); | |
| 43 FilePath::StringType pepper_plugin = plugin_lib.value(); | |
| 44 pepper_plugin.append(FILE_PATH_LITERAL(";application/x-ppapi-tests")); | |
| 45 launch_arguments_.AppendSwitchNative(switches::kRegisterPepperPlugins, | |
| 46 pepper_plugin); | |
| 47 | |
| 48 // The test sends us the result via a cookie. | 38 // The test sends us the result via a cookie. |
| 49 launch_arguments_.AppendSwitch(switches::kEnableFileCookies); | 39 launch_arguments_.AppendSwitch(switches::kEnableFileCookies); |
| 50 | 40 |
| 51 // Some stuff is hung off of the testing interface which is not enabled | 41 // Some stuff is hung off of the testing interface which is not enabled |
| 52 // by default. | 42 // by default. |
| 53 launch_arguments_.AppendSwitch(switches::kEnablePepperTesting); | 43 launch_arguments_.AppendSwitch(switches::kEnablePepperTesting); |
| 54 | 44 |
| 55 // Smooth scrolling confuses the scrollbar test. | 45 // Smooth scrolling confuses the scrollbar test. |
| 56 launch_arguments_.AppendSwitch(switches::kDisableSmoothScrolling); | 46 launch_arguments_.AppendSwitch(switches::kDisableSmoothScrolling); |
| 57 } | 47 } |
| 58 | 48 |
| 49 virtual std::string BuildQuery(const std::string& base, | |
| 50 const std::string& test_case)=0; | |
| 51 | |
| 59 void RunTest(const std::string& test_case) { | 52 void RunTest(const std::string& test_case) { |
| 60 FilePath test_path; | 53 FilePath test_path; |
| 61 PathService::Get(base::DIR_SOURCE_ROOT, &test_path); | 54 EXPECT_TRUE(PathService::Get(base::DIR_SOURCE_ROOT, &test_path)); |
| 62 test_path = test_path.Append(FILE_PATH_LITERAL("ppapi")); | 55 test_path = test_path.Append(FILE_PATH_LITERAL("ppapi")); |
| 63 test_path = test_path.Append(FILE_PATH_LITERAL("tests")); | 56 test_path = test_path.Append(FILE_PATH_LITERAL("tests")); |
| 64 test_path = test_path.Append(FILE_PATH_LITERAL("test_case.html")); | 57 test_path = test_path.Append(FILE_PATH_LITERAL("test_case.html")); |
| 65 | 58 |
| 66 // Sanity check the file name. | 59 // Sanity check the file name. |
| 67 EXPECT_TRUE(file_util::PathExists(test_path)); | 60 EXPECT_TRUE(file_util::PathExists(test_path)); |
| 68 | 61 |
| 69 GURL::Replacements replacements; | 62 GURL::Replacements replacements; |
| 70 std::string query("testcase="); | 63 std::string query = BuildQuery("", test_case); |
| 71 query += test_case; | |
| 72 replacements.SetQuery(query.c_str(), url_parse::Component(0, query.size())); | 64 replacements.SetQuery(query.c_str(), url_parse::Component(0, query.size())); |
| 73 GURL test_url = net::FilePathToFileURL(test_path); | 65 GURL test_url = net::FilePathToFileURL(test_path); |
| 74 RunTestURL(test_url.ReplaceComponents(replacements)); | 66 RunTestURL(test_url.ReplaceComponents(replacements)); |
| 75 } | 67 } |
| 76 | 68 |
| 77 void RunTestViaHTTP(const std::string& test_case) { | 69 void RunTestViaHTTP(const std::string& test_case) { |
| 78 net::TestServer test_server( | 70 FilePath exe_dir = CommandLine::ForCurrentProcess()->GetProgram().DirName(); |
|
dmichael (off chromium)
2011/11/18 20:10:25
nit: could you add a comment explaining why you ne
noelallen1
2011/11/18 20:39:39
Done.
| |
| 79 net::TestServer::TYPE_HTTP, | 71 FilePath src_dir; |
| 80 FilePath(FILE_PATH_LITERAL("ppapi/tests"))); | 72 ASSERT_TRUE(PathService::Get(base::DIR_SOURCE_ROOT, &src_dir)); |
| 73 | |
| 74 // TestServer expects a path relative to source. So we must first | |
| 75 // generate absolute paths to SRC and EXE and from there generate | |
| 76 // a relative path. | |
| 77 if (!exe_dir.IsAbsolute()) file_util::AbsolutePath(&exe_dir); | |
| 78 if (!src_dir.IsAbsolute()) file_util::AbsolutePath(&src_dir); | |
| 79 ASSERT_TRUE(exe_dir.IsAbsolute()); | |
| 80 ASSERT_TRUE(src_dir.IsAbsolute()); | |
| 81 | |
| 82 size_t match, exe_size, src_size; | |
| 83 std::vector<FilePath::StringType> src_parts, exe_parts; | |
| 84 | |
| 85 // Determine point at which src and exe diverge, and create a relative path. | |
| 86 exe_dir.GetComponents(&exe_parts); | |
| 87 src_dir.GetComponents(&src_parts); | |
| 88 exe_size = exe_parts.size(); | |
| 89 src_size = src_parts.size(); | |
| 90 for (match = 0; match < exe_size && match < src_size; ++match) { | |
| 91 if (exe_parts[match] != src_parts[match]) | |
| 92 break; | |
| 93 } | |
| 94 FilePath web_dir; | |
| 95 for (size_t tmp_itr = match; tmp_itr < src_size; ++tmp_itr) { | |
| 96 web_dir = web_dir.Append(FILE_PATH_LITERAL("..")); | |
| 97 } | |
| 98 for (; match < exe_size; ++match) { | |
| 99 web_dir = web_dir.Append(exe_parts[match]); | |
| 100 } | |
| 101 | |
| 102 net::TestServer test_server(net::TestServer::TYPE_HTTP, web_dir); | |
| 81 ASSERT_TRUE(test_server.Start()); | 103 ASSERT_TRUE(test_server.Start()); |
| 82 RunTestURL( | 104 std::string query = BuildQuery("files/test_case.html?", test_case); |
| 83 test_server.GetURL("files/test_case.html?testcase=" + test_case)); | 105 RunTestURL(test_server.GetURL(query)); |
| 84 } | 106 } |
| 85 | 107 |
| 86 private: | 108 private: |
| 87 void RunTestURL(const GURL& test_url) { | 109 void RunTestURL(const GURL& test_url) { |
| 88 scoped_refptr<TabProxy> tab(GetActiveTab()); | 110 scoped_refptr<TabProxy> tab(GetActiveTab()); |
| 89 ASSERT_TRUE(tab.get()); | 111 ASSERT_TRUE(tab.get()); |
| 90 ASSERT_TRUE(tab->NavigateToURL(test_url)); | 112 ASSERT_TRUE(tab->NavigateToURL(test_url)); |
| 91 | 113 |
| 92 // See comment above TestingInstance in ppapi/test/testing_instance.h. | 114 // See comment above TestingInstance in ppapi/test/testing_instance.h. |
| 93 // Basically it sets a series of numbered cookies. The value of "..." means | 115 // Basically it sets a series of numbered cookies. The value of "..." means |
| (...skipping 18 matching lines...) Expand all Loading... | |
| 112 << "Plugin couldn't be loaded. Make sure the PPAPI test plugin is " | 134 << "Plugin couldn't be loaded. Make sure the PPAPI test plugin is " |
| 113 << "built, in the right place, and doesn't have any missing symbols."; | 135 << "built, in the right place, and doesn't have any missing symbols."; |
| 114 } else { | 136 } else { |
| 115 ASSERT_FALSE(progress.empty()) << "Test timed out."; | 137 ASSERT_FALSE(progress.empty()) << "Test timed out."; |
| 116 } | 138 } |
| 117 | 139 |
| 118 EXPECT_STREQ("PASS", progress.c_str()); | 140 EXPECT_STREQ("PASS", progress.c_str()); |
| 119 } | 141 } |
| 120 }; | 142 }; |
| 121 | 143 |
| 144 // In-process plugin test runner. See OutOfProcessPPAPITest below for the | |
| 145 // out-of-process version. | |
| 146 class PPAPITest : public PPAPITestBase { | |
| 147 public: | |
| 148 PPAPITest() { | |
| 149 // Append the switch to register the pepper plugin. | |
| 150 // library name = <out dir>/<test_name>.<library_extension> | |
| 151 // MIME type = application/x-ppapi-<test_name> | |
| 152 FilePath plugin_dir; | |
| 153 EXPECT_TRUE(PathService::Get(base::DIR_EXE, &plugin_dir)); | |
| 154 | |
| 155 FilePath plugin_lib = plugin_dir.Append(library_name); | |
| 156 EXPECT_TRUE(file_util::PathExists(plugin_lib)); | |
| 157 FilePath::StringType pepper_plugin = plugin_lib.value(); | |
| 158 pepper_plugin.append(FILE_PATH_LITERAL(";application/x-ppapi-tests")); | |
| 159 launch_arguments_.AppendSwitchNative(switches::kRegisterPepperPlugins, | |
| 160 pepper_plugin); | |
| 161 } | |
| 162 | |
| 163 std::string BuildQuery(const std::string& base, | |
| 164 const std::string& test_case){ | |
| 165 return StringPrintf("%stestcase=%s", base.c_str(), test_case.c_str()); | |
|
dmichael (off chromium)
2011/11/18 20:10:25
optional nit: I guess it's fine, but why not just
noelallen1
2011/11/18 20:39:39
Previous comment from other reviewer to use String
| |
| 166 } | |
| 167 | |
| 168 }; | |
| 169 | |
| 122 // Variant of PPAPITest that runs plugins out-of-process to test proxy | 170 // Variant of PPAPITest that runs plugins out-of-process to test proxy |
| 123 // codepaths. | 171 // codepaths. |
| 124 class OutOfProcessPPAPITest : public PPAPITest { | 172 class OutOfProcessPPAPITest : public PPAPITest { |
| 125 public: | 173 public: |
| 126 OutOfProcessPPAPITest() { | 174 OutOfProcessPPAPITest() { |
| 127 // Run PPAPI out-of-process to exercise proxy implementations. | 175 // Run PPAPI out-of-process to exercise proxy implementations. |
| 128 launch_arguments_.AppendSwitch(switches::kPpapiOutOfProcess); | 176 launch_arguments_.AppendSwitch(switches::kPpapiOutOfProcess); |
| 129 } | 177 } |
| 130 }; | 178 }; |
| 131 | 179 |
| 180 // NaCl plugin test runner. | |
| 181 class PPAPINaClTest : public PPAPITestBase { | |
| 182 public: | |
| 183 PPAPINaClTest() { | |
| 184 FilePath plugin_lib; | |
| 185 EXPECT_TRUE(PathService::Get(chrome::FILE_NACL_PLUGIN, &plugin_lib)); | |
| 186 EXPECT_TRUE(file_util::PathExists(plugin_lib)); | |
| 187 | |
| 188 // Enable running NaCl outside of the store. | |
| 189 launch_arguments_.AppendSwitch(switches::kEnableNaCl); | |
| 190 } | |
| 191 | |
| 192 // Append the correct mode and testcase string | |
| 193 std::string BuildQuery(const std::string& base, | |
| 194 const std::string& test_case) { | |
| 195 return StringPrintf("%smode=nacl&testcase=%s", base.c_str(), | |
| 196 test_case.c_str()); | |
| 197 } | |
| 198 }; | |
| 199 | |
| 200 | |
| 132 // Use these macros to run the tests for a specific interface. | 201 // Use these macros to run the tests for a specific interface. |
| 133 // Most interfaces should be tested with both macros. | 202 // Most interfaces should be tested with both macros. |
| 134 #define TEST_PPAPI_IN_PROCESS(test_name) \ | 203 #define TEST_PPAPI_IN_PROCESS(test_name) \ |
| 135 TEST_F(PPAPITest, test_name) { \ | 204 TEST_F(PPAPITest, test_name) { \ |
| 136 RunTest(#test_name); \ | 205 RunTest(#test_name); \ |
| 137 } | 206 } |
| 138 #define TEST_PPAPI_OUT_OF_PROCESS(test_name) \ | 207 #define TEST_PPAPI_OUT_OF_PROCESS(test_name) \ |
| 139 TEST_F(OutOfProcessPPAPITest, test_name) { \ | 208 TEST_F(OutOfProcessPPAPITest, test_name) { \ |
| 140 RunTest(#test_name); \ | 209 RunTest(#test_name); \ |
| 141 } | 210 } |
| 142 | 211 |
| 143 // Similar macros that test over HTTP. | 212 // Similar macros that test over HTTP. |
| 144 #define TEST_PPAPI_IN_PROCESS_VIA_HTTP(test_name) \ | 213 #define TEST_PPAPI_IN_PROCESS_VIA_HTTP(test_name) \ |
| 145 TEST_F(PPAPITest, test_name) { \ | 214 TEST_F(PPAPITest, test_name) { \ |
| 146 RunTestViaHTTP(#test_name); \ | 215 RunTestViaHTTP(#test_name); \ |
| 147 } | 216 } |
| 148 #define TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(test_name) \ | 217 #define TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(test_name) \ |
| 149 TEST_F(OutOfProcessPPAPITest, test_name) { \ | 218 TEST_F(OutOfProcessPPAPITest, test_name) { \ |
| 150 RunTestViaHTTP(#test_name); \ | 219 RunTestViaHTTP(#test_name); \ |
| 151 } | 220 } |
| 152 | 221 |
| 153 | 222 |
| 223 // NaCl based PPAPI tests | |
| 224 #define TEST_PPAPI_NACL_VIA_HTTP(test_name) \ | |
| 225 TEST_F(PPAPINaClTest, test_name) { \ | |
| 226 RunTestViaHTTP(#test_name); \ | |
| 227 } | |
| 228 | |
| 154 // | 229 // |
| 155 // Interface tests. | 230 // Interface tests. |
| 156 // | 231 // |
| 157 | 232 |
| 158 TEST_PPAPI_IN_PROCESS(Broker) | 233 TEST_PPAPI_IN_PROCESS(Broker) |
| 159 TEST_PPAPI_OUT_OF_PROCESS(Broker) | 234 TEST_PPAPI_OUT_OF_PROCESS(Broker) |
| 160 | 235 |
| 161 TEST_PPAPI_IN_PROCESS(Core) | 236 TEST_PPAPI_IN_PROCESS(Core) |
| 162 TEST_PPAPI_OUT_OF_PROCESS(Core) | 237 TEST_PPAPI_OUT_OF_PROCESS(Core) |
| 163 | 238 |
| 164 TEST_PPAPI_IN_PROCESS(CursorControl) | 239 TEST_PPAPI_IN_PROCESS(CursorControl) |
| 165 TEST_PPAPI_OUT_OF_PROCESS(CursorControl) | 240 TEST_PPAPI_OUT_OF_PROCESS(CursorControl) |
| 241 TEST_PPAPI_NACL_VIA_HTTP(CursorControl) | |
| 166 | 242 |
| 167 TEST_PPAPI_IN_PROCESS(Instance) | 243 TEST_PPAPI_IN_PROCESS(Instance) |
| 168 // http://crbug.com/91729 | 244 // http://crbug.com/91729 |
| 169 TEST_PPAPI_OUT_OF_PROCESS(DISABLED_Instance) | 245 TEST_PPAPI_OUT_OF_PROCESS(DISABLED_Instance) |
| 170 | 246 |
| 171 TEST_PPAPI_IN_PROCESS(Graphics2D) | 247 TEST_PPAPI_IN_PROCESS(Graphics2D) |
| 172 TEST_PPAPI_OUT_OF_PROCESS(Graphics2D) | 248 TEST_PPAPI_OUT_OF_PROCESS(Graphics2D) |
| 249 TEST_PPAPI_NACL_VIA_HTTP(Graphics2D) | |
| 173 | 250 |
| 174 TEST_PPAPI_IN_PROCESS(ImageData) | 251 TEST_PPAPI_IN_PROCESS(ImageData) |
| 175 TEST_PPAPI_OUT_OF_PROCESS(ImageData) | 252 TEST_PPAPI_OUT_OF_PROCESS(ImageData) |
| 253 TEST_PPAPI_NACL_VIA_HTTP(ImageData) | |
| 176 | 254 |
| 177 TEST_PPAPI_IN_PROCESS(Buffer) | 255 TEST_PPAPI_IN_PROCESS(Buffer) |
| 178 TEST_PPAPI_OUT_OF_PROCESS(Buffer) | 256 TEST_PPAPI_OUT_OF_PROCESS(Buffer) |
| 179 | 257 |
| 180 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader) | 258 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader) |
| 181 | |
| 182 // http://crbug.com/89961 | 259 // http://crbug.com/89961 |
| 183 #if defined(OS_WIN) | 260 #if defined(OS_WIN) |
| 184 // It often takes too long time (and fails otherwise) on Windows. | 261 // It often takes too long time (and fails otherwise) on Windows. |
| 185 #define MAYBE_URLLoader DISABLED_URLLoader | 262 #define MAYBE_URLLoader DISABLED_URLLoader |
| 186 #else | 263 #else |
| 187 #define MAYBE_URLLoader FAILS_URLLoader | 264 #define MAYBE_URLLoader FAILS_URLLoader |
| 188 #endif | 265 #endif |
| 189 | |
| 190 TEST_F(OutOfProcessPPAPITest, MAYBE_URLLoader) { | 266 TEST_F(OutOfProcessPPAPITest, MAYBE_URLLoader) { |
| 191 RunTestViaHTTP("URLLoader"); | 267 RunTestViaHTTP("URLLoader"); |
| 192 } | 268 } |
| 193 | 269 |
| 270 | |
| 271 | |
| 194 TEST_PPAPI_IN_PROCESS(PaintAggregator) | 272 TEST_PPAPI_IN_PROCESS(PaintAggregator) |
| 195 TEST_PPAPI_OUT_OF_PROCESS(PaintAggregator) | 273 TEST_PPAPI_OUT_OF_PROCESS(PaintAggregator) |
| 274 TEST_PPAPI_NACL_VIA_HTTP(PaintAggregator) | |
| 196 | 275 |
| 197 TEST_PPAPI_IN_PROCESS(Scrollbar) | 276 TEST_PPAPI_IN_PROCESS(Scrollbar) |
| 198 // http://crbug.com/89961 | 277 // http://crbug.com/89961 |
| 199 TEST_F(OutOfProcessPPAPITest, FAILS_Scrollbar) { | 278 TEST_F(OutOfProcessPPAPITest, FAILS_Scrollbar) { |
| 200 RunTest("Scrollbar"); | 279 RunTest("Scrollbar"); |
| 201 } | 280 } |
| 281 TEST_PPAPI_NACL_VIA_HTTP(Scrollbar) | |
| 202 | 282 |
| 203 TEST_PPAPI_IN_PROCESS(URLUtil) | 283 TEST_PPAPI_IN_PROCESS(URLUtil) |
| 204 TEST_PPAPI_OUT_OF_PROCESS(URLUtil) | 284 TEST_PPAPI_OUT_OF_PROCESS(URLUtil) |
| 205 | 285 |
| 206 TEST_PPAPI_IN_PROCESS(CharSet) | 286 TEST_PPAPI_IN_PROCESS(CharSet) |
| 207 TEST_PPAPI_OUT_OF_PROCESS(CharSet) | 287 TEST_PPAPI_OUT_OF_PROCESS(CharSet) |
| 208 | 288 |
| 209 TEST_PPAPI_IN_PROCESS(Crypto) | 289 TEST_PPAPI_IN_PROCESS(Crypto) |
| 210 TEST_PPAPI_OUT_OF_PROCESS(Crypto) | 290 TEST_PPAPI_OUT_OF_PROCESS(Crypto) |
| 211 | 291 |
| 212 TEST_PPAPI_IN_PROCESS(Var) | 292 TEST_PPAPI_IN_PROCESS(Var) |
| 213 // http://crbug.com/89961 | 293 // http://crbug.com/89961 |
| 214 TEST_F(OutOfProcessPPAPITest, FAILS_Var) { | 294 TEST_F(OutOfProcessPPAPITest, FAILS_Var) { |
| 215 RunTest("Var"); | 295 RunTest("Var"); |
| 216 } | 296 } |
| 297 TEST_PPAPI_NACL_VIA_HTTP(Var) | |
| 217 | 298 |
| 218 TEST_PPAPI_IN_PROCESS(VarDeprecated) | 299 TEST_PPAPI_IN_PROCESS(VarDeprecated) |
| 219 // Disabled because it times out: http://crbug.com/89961 | 300 // Disabled because it times out: http://crbug.com/89961 |
| 220 //TEST_PPAPI_OUT_OF_PROCESS(VarDeprecated) | 301 //TEST_PPAPI_OUT_OF_PROCESS(VarDeprecated) |
| 221 | 302 |
| 222 // Windows defines 'PostMessage', so we have to undef it. | 303 // Windows defines 'PostMessage', so we have to undef it. |
| 223 #ifdef PostMessage | 304 #ifdef PostMessage |
| 224 #undef PostMessage | 305 #undef PostMessage |
| 225 #endif | 306 #endif |
| 226 TEST_PPAPI_IN_PROCESS(PostMessage_SendInInit) | 307 TEST_PPAPI_IN_PROCESS(PostMessage_SendInInit) |
| 227 TEST_PPAPI_IN_PROCESS(PostMessage_SendingData) | 308 TEST_PPAPI_IN_PROCESS(PostMessage_SendingData) |
| 228 TEST_PPAPI_IN_PROCESS(PostMessage_MessageEvent) | 309 TEST_PPAPI_IN_PROCESS(PostMessage_MessageEvent) |
| 229 TEST_PPAPI_IN_PROCESS(PostMessage_NoHandler) | 310 TEST_PPAPI_IN_PROCESS(PostMessage_NoHandler) |
| 230 TEST_PPAPI_IN_PROCESS(PostMessage_ExtraParam) | 311 TEST_PPAPI_IN_PROCESS(PostMessage_ExtraParam) |
| 231 TEST_PPAPI_OUT_OF_PROCESS(PostMessage_SendInInit) | 312 TEST_PPAPI_OUT_OF_PROCESS(PostMessage_SendInInit) |
| 232 TEST_PPAPI_OUT_OF_PROCESS(PostMessage_SendingData) | 313 TEST_PPAPI_OUT_OF_PROCESS(PostMessage_SendingData) |
| 233 TEST_PPAPI_OUT_OF_PROCESS(PostMessage_MessageEvent) | 314 TEST_PPAPI_OUT_OF_PROCESS(PostMessage_MessageEvent) |
| 234 TEST_PPAPI_OUT_OF_PROCESS(PostMessage_NoHandler) | 315 TEST_PPAPI_OUT_OF_PROCESS(PostMessage_NoHandler) |
| 235 TEST_PPAPI_OUT_OF_PROCESS(PostMessage_ExtraParam) | 316 TEST_PPAPI_OUT_OF_PROCESS(PostMessage_ExtraParam) |
| 236 #if !defined(OS_WIN) | 317 #if !defined(OS_WIN) |
| 237 // Times out on Windows XP: http://crbug.com/95557 | 318 // Times out on Windows XP: http://crbug.com/95557 |
| 238 TEST_PPAPI_OUT_OF_PROCESS(PostMessage_NonMainThread) | 319 TEST_PPAPI_OUT_OF_PROCESS(PostMessage_NonMainThread) |
| 239 #endif | 320 #endif |
| 240 | 321 |
| 241 TEST_PPAPI_IN_PROCESS(Memory) | 322 TEST_PPAPI_IN_PROCESS(Memory) |
| 242 TEST_PPAPI_OUT_OF_PROCESS(Memory) | 323 TEST_PPAPI_OUT_OF_PROCESS(Memory) |
| 324 TEST_PPAPI_NACL_VIA_HTTP(Memory) | |
| 243 | 325 |
| 244 TEST_PPAPI_IN_PROCESS(VideoDecoder) | 326 TEST_PPAPI_IN_PROCESS(VideoDecoder) |
| 245 TEST_PPAPI_OUT_OF_PROCESS(VideoDecoder) | 327 TEST_PPAPI_OUT_OF_PROCESS(VideoDecoder) |
| 246 | 328 |
| 247 // http://crbug.com/90039 and http://crbug.com/83443 (Mac) | 329 // http://crbug.com/90039 and http://crbug.com/83443 (Mac) |
| 248 TEST_F(PPAPITest, FAILS_FileIO) { | 330 TEST_F(PPAPITest, FAILS_FileIO) { |
| 249 RunTestViaHTTP("FileIO"); | 331 RunTestViaHTTP("FileIO"); |
| 250 } | 332 } |
| 251 // http://crbug.com/101154 | 333 // http://crbug.com/101154 |
| 252 TEST_F(OutOfProcessPPAPITest, DISABLED_FileIO) { | 334 TEST_F(OutOfProcessPPAPITest, DISABLED_FileIO) { |
| 253 RunTestViaHTTP("FileIO"); | 335 RunTestViaHTTP("FileIO"); |
| 254 } | 336 } |
| 337 TEST_PPAPI_NACL_VIA_HTTP(DISABLED_FileIO) | |
| 338 | |
| 255 | 339 |
| 256 TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileRef) | 340 TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileRef) |
| 257 // Disabled because it times out: http://crbug.com/89961 | 341 // Disabled because it times out: http://crbug.com/89961 |
| 258 //TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileRef) | 342 //TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileRef) |
| 343 TEST_PPAPI_NACL_VIA_HTTP(FileRef) | |
| 344 | |
| 259 | 345 |
| 260 TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileSystem) | 346 TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileSystem) |
| 261 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileSystem) | 347 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileSystem) |
| 348 TEST_PPAPI_NACL_VIA_HTTP(FileSystem) | |
| 262 | 349 |
| 263 // http://crbug.com/96767 and 104384 for aura. | 350 // http://crbug.com/96767 and 104384 for aura. |
| 264 #if !defined(OS_MACOSX) && !defined(USE_AURA) | 351 #if !defined(OS_MACOSX) && !defined(USE_AURA) |
| 265 #define MAYBE_FlashFullscreen FLAKY_FlashFullscreen | 352 #define MAYBE_FlashFullscreen FLAKY_FlashFullscreen |
| 266 #define MAYBE_FlashFullscreen FLAKY_FlashFullscreen | 353 #define MAYBE_FlashFullscreen FLAKY_FlashFullscreen |
| 267 #else | 354 #else |
| 268 #define MAYBE_FlashFullscreen DISABLED_FlashFullscreen | 355 #define MAYBE_FlashFullscreen DISABLED_FlashFullscreen |
| 269 #define MAYBE_FlashFullscreen DISABLED_FlashFullscreen | 356 #define MAYBE_FlashFullscreen DISABLED_FlashFullscreen |
| 270 #endif | 357 #endif |
| 271 | 358 |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 324 RunTest("UMA"); | 411 RunTest("UMA"); |
| 325 } | 412 } |
| 326 | 413 |
| 327 TEST_PPAPI_IN_PROCESS(NetAddressPrivate) | 414 TEST_PPAPI_IN_PROCESS(NetAddressPrivate) |
| 328 TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate) | 415 TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate) |
| 329 | 416 |
| 330 // PPB_TCPSocket_Private currently isn't supported in-process. | 417 // PPB_TCPSocket_Private currently isn't supported in-process. |
| 331 TEST_F(OutOfProcessPPAPITest, TCPSocketPrivate) { | 418 TEST_F(OutOfProcessPPAPITest, TCPSocketPrivate) { |
| 332 RunTestViaHTTP("TCPSocketPrivate"); | 419 RunTestViaHTTP("TCPSocketPrivate"); |
| 333 } | 420 } |
| OLD | NEW |