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 |