• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
3 // found in the LICENSE file.
4 
5 #include "chrome/test/ppapi/ppapi_test.h"
6 
7 #include "base/test/test_timeouts.h"
8 #include "build/build_config.h"
9 #include "chrome/browser/content_settings/host_content_settings_map.h"
10 #include "chrome/browser/profiles/profile.h"
11 #include "chrome/browser/ui/browser.h"
12 #include "chrome/browser/ui/browser_navigator.h"
13 #include "chrome/browser/ui/tabs/tab_strip_model.h"
14 #include "chrome/test/base/javascript_test_observer.h"
15 #include "chrome/test/base/ui_test_utils.h"
16 #include "content/public/browser/web_contents.h"
17 #include "content/public/common/url_constants.h"
18 #include "content/public/test/test_renderer_host.h"
19 
20 using content::RenderViewHost;
21 
22 // This macro finesses macro expansion to do what we want.
23 #define STRIP_PREFIXES(test_name) StripPrefixes(#test_name)
24 // Turn the given token into a string. This allows us to use precompiler stuff
25 // to turn names into DISABLED_Foo, but still pass a string to RunTest.
26 #define STRINGIFY(test_name) #test_name
27 #define LIST_TEST(test_name) STRINGIFY(test_name) ","
28 
29 // Use these macros to run the tests for a specific interface.
30 // Most interfaces should be tested with both macros.
31 #define TEST_PPAPI_IN_PROCESS(test_name) \
32     IN_PROC_BROWSER_TEST_F(PPAPITest, test_name) { \
33       RunTest(STRIP_PREFIXES(test_name)); \
34     }
35 #define TEST_PPAPI_OUT_OF_PROCESS(test_name) \
36     IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, test_name) { \
37       RunTest(STRIP_PREFIXES(test_name)); \
38     }
39 
40 // Similar macros that test over HTTP.
41 #define TEST_PPAPI_IN_PROCESS_VIA_HTTP(test_name) \
42     IN_PROC_BROWSER_TEST_F(PPAPITest, test_name) { \
43       RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
44     }
45 #define TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(test_name) \
46     IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, test_name) { \
47       RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
48     }
49 
50 // Similar macros that test with an SSL server.
51 #define TEST_PPAPI_IN_PROCESS_WITH_SSL_SERVER(test_name) \
52     IN_PROC_BROWSER_TEST_F(PPAPITest, test_name) { \
53       RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
54     }
55 #define TEST_PPAPI_OUT_OF_PROCESS_WITH_SSL_SERVER(test_name) \
56     IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, test_name) { \
57       RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
58     }
59 
60 #if defined(DISABLE_NACL)
61 #define TEST_PPAPI_NACL(test_name)
62 #define TEST_PPAPI_NACL_DISALLOWED_SOCKETS(test_name)
63 #define TEST_PPAPI_NACL_WITH_SSL_SERVER(test_name)
64 
65 #elif defined(ARCH_CPU_ARM_FAMILY)
66 // NaCl glibc tests are not included in ARM as there is no glibc support
67 // on ARM today.
68 #define TEST_PPAPI_NACL(test_name) \
69     IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, test_name) { \
70       RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
71     } \
72     IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, test_name) { \
73       RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
74     }
75 
76 #define TEST_PPAPI_NACL_DISALLOWED_SOCKETS(test_name) \
77     IN_PROC_BROWSER_TEST_F(PPAPINaClTestDisallowedSockets, test_name) { \
78       RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
79     }
80 
81 #define TEST_PPAPI_NACL_WITH_SSL_SERVER(test_name) \
82     IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, test_name) { \
83       RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
84     } \
85     IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, test_name) { \
86       RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
87     }
88 
89 #else
90 
91 // NaCl based PPAPI tests
92 #define TEST_PPAPI_NACL(test_name) \
93     IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, test_name) { \
94       RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
95     } \
96     IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, test_name) { \
97       RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
98     } \
99     IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, test_name) { \
100       RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
101     }
102 
103 // NaCl based PPAPI tests with disallowed socket API
104 #define TEST_PPAPI_NACL_DISALLOWED_SOCKETS(test_name) \
105     IN_PROC_BROWSER_TEST_F(PPAPINaClTestDisallowedSockets, test_name) { \
106       RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
107     }
108 
109 // NaCl based PPAPI tests with SSL server
110 #define TEST_PPAPI_NACL_WITH_SSL_SERVER(test_name) \
111     IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, test_name) { \
112       RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
113     } \
114     IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, test_name) { \
115       RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
116     } \
117     IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, test_name) { \
118       RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
119     }
120 
121 #endif
122 
123 
124 // NaCl glibc tests are not included in ARM as there is no glibc support
125 // on ARM today.
126 #if defined(ARCH_CPU_ARM_FAMILY)
127 #define MAYBE_GLIBC(test_name) DISABLED_##test_name
128 #else
129 #define MAYBE_GLIBC(test_name) test_name
130 #endif
131 
132 
133 //
134 // Interface tests.
135 //
136 
137 TEST_PPAPI_IN_PROCESS(Broker)
138 // Flaky, http://crbug.com/111355
TEST_PPAPI_OUT_OF_PROCESS(DISABLED_Broker)139 TEST_PPAPI_OUT_OF_PROCESS(DISABLED_Broker)
140 
141 IN_PROC_BROWSER_TEST_F(PPAPIBrokerInfoBarTest, Accept) {
142   // Accepting the infobar should grant permission to access the PPAPI broker.
143   InfoBarObserver observer(this);
144   observer.ExpectInfoBarAndAccept(true);
145 
146   // PPB_Broker_Trusted::IsAllowed should return false before the infobar is
147   // popped and true after the infobar is popped.
148   RunTest("Broker_IsAllowedPermissionDenied");
149   RunTest("Broker_ConnectPermissionGranted");
150   RunTest("Broker_IsAllowedPermissionGranted");
151 
152   // It should also set a content settings exception for the site.
153   GURL url = GetTestFileUrl("Broker_ConnectPermissionGranted");
154   HostContentSettingsMap* content_settings =
155       browser()->profile()->GetHostContentSettingsMap();
156   EXPECT_EQ(CONTENT_SETTING_ALLOW,
157             content_settings->GetContentSetting(
158                 url, url, CONTENT_SETTINGS_TYPE_PPAPI_BROKER, std::string()));
159 }
160 
IN_PROC_BROWSER_TEST_F(PPAPIBrokerInfoBarTest,Deny)161 IN_PROC_BROWSER_TEST_F(PPAPIBrokerInfoBarTest, Deny) {
162   // Canceling the infobar should deny permission to access the PPAPI broker.
163   InfoBarObserver observer(this);
164   observer.ExpectInfoBarAndAccept(false);
165 
166   // PPB_Broker_Trusted::IsAllowed should return false before and after the
167   // infobar is popped.
168   RunTest("Broker_IsAllowedPermissionDenied");
169   RunTest("Broker_ConnectPermissionDenied");
170   RunTest("Broker_IsAllowedPermissionDenied");
171 
172   // It should also set a content settings exception for the site.
173   GURL url = GetTestFileUrl("Broker_ConnectPermissionDenied");
174   HostContentSettingsMap* content_settings =
175       browser()->profile()->GetHostContentSettingsMap();
176   EXPECT_EQ(CONTENT_SETTING_BLOCK,
177             content_settings->GetContentSetting(
178                 url, url, CONTENT_SETTINGS_TYPE_PPAPI_BROKER, std::string()));
179 }
180 
IN_PROC_BROWSER_TEST_F(PPAPIBrokerInfoBarTest,Blocked)181 IN_PROC_BROWSER_TEST_F(PPAPIBrokerInfoBarTest, Blocked) {
182   // Block access to the PPAPI broker.
183   browser()->profile()->GetHostContentSettingsMap()->SetDefaultContentSetting(
184       CONTENT_SETTINGS_TYPE_PPAPI_BROKER, CONTENT_SETTING_BLOCK);
185 
186   // We shouldn't see an infobar.
187   InfoBarObserver observer(this);
188 
189   RunTest("Broker_ConnectPermissionDenied");
190   RunTest("Broker_IsAllowedPermissionDenied");
191 }
192 
IN_PROC_BROWSER_TEST_F(PPAPIBrokerInfoBarTest,Allowed)193 IN_PROC_BROWSER_TEST_F(PPAPIBrokerInfoBarTest, Allowed) {
194   // Always allow access to the PPAPI broker.
195   browser()->profile()->GetHostContentSettingsMap()->SetDefaultContentSetting(
196       CONTENT_SETTINGS_TYPE_PPAPI_BROKER, CONTENT_SETTING_ALLOW);
197 
198   // We shouldn't see an infobar.
199   InfoBarObserver observer(this);
200 
201   RunTest("Broker_ConnectPermissionGranted");
202   RunTest("Broker_IsAllowedPermissionGranted");
203 }
204 
205 TEST_PPAPI_IN_PROCESS(Console)
206 TEST_PPAPI_OUT_OF_PROCESS(Console)
207 TEST_PPAPI_NACL(Console)
208 
209 #if defined(OS_LINUX) && !defined(OS_CHROMEOS) && defined(USE_AURA)
210 // TODO(erg): linux_aura bringup: http://crbug.com/318961
211 #define MAYBE_Core DISABLED_Core
212 #else
213 #define MAYBE_Core Core
214 #endif
215 TEST_PPAPI_IN_PROCESS(MAYBE_Core)
216 TEST_PPAPI_OUT_OF_PROCESS(MAYBE_Core)
217 TEST_PPAPI_NACL(MAYBE_Core)
218 
219 TEST_PPAPI_IN_PROCESS(TraceEvent)
220 TEST_PPAPI_OUT_OF_PROCESS(TraceEvent)
221 TEST_PPAPI_NACL(TraceEvent)
222 
223 TEST_PPAPI_IN_PROCESS(InputEvent)
224 TEST_PPAPI_OUT_OF_PROCESS(InputEvent)
225 TEST_PPAPI_NACL(InputEvent)
226 
227 // Flaky on Linux and Windows. http://crbug.com/135403
228 #if defined(OS_LINUX) || defined(OS_WIN)
229 #define MAYBE_ImeInputEvent DISABLED_ImeInputEvent
230 #else
231 #define MAYBE_ImeInputEvent ImeInputEvent
232 #endif
233 
234 TEST_PPAPI_IN_PROCESS(MAYBE_ImeInputEvent)
235 TEST_PPAPI_OUT_OF_PROCESS(MAYBE_ImeInputEvent)
236 TEST_PPAPI_NACL(MAYBE_ImeInputEvent)
237 
238 // "Instance" tests are really InstancePrivate tests. InstancePrivate is not
239 // supported in NaCl, so these tests are only run trusted.
240 // Also note that these tests are run separately on purpose (versus collapsed
241 // in to one IN_PROC_BROWSER_TEST_F macro), because some of them have leaks
242 // on purpose that will look like failures to tests that are run later.
243 TEST_PPAPI_IN_PROCESS(Instance_ExecuteScript);
244 TEST_PPAPI_OUT_OF_PROCESS(Instance_ExecuteScript)
245 
246 // We run and reload the RecursiveObjects test to ensure that the InstanceObject
247 // (and others) are properly cleaned up after the first run.
IN_PROC_BROWSER_TEST_F(PPAPITest,Instance_RecursiveObjects)248 IN_PROC_BROWSER_TEST_F(PPAPITest, Instance_RecursiveObjects) {
249   RunTestAndReload("Instance_RecursiveObjects");
250 }
251 // TODO(dmichael): Make it work out-of-process (or at least see whether we
252 //                 care).
IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,DISABLED_Instance_RecursiveObjects)253 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,
254                        DISABLED_Instance_RecursiveObjects) {
255   RunTestAndReload("Instance_RecursiveObjects");
256 }
257 TEST_PPAPI_IN_PROCESS(Instance_LeakedObjectDestructors);
258 TEST_PPAPI_OUT_OF_PROCESS(Instance_LeakedObjectDestructors);
259 
IN_PROC_BROWSER_TEST_F(PPAPITest,Instance_ExecuteScriptAtInstanceShutdown)260 IN_PROC_BROWSER_TEST_F(PPAPITest,
261                        Instance_ExecuteScriptAtInstanceShutdown) {
262   // In other tests, we use one call to RunTest so that the tests can all run
263   // in one plugin instance. This saves time on loading the plugin (especially
264   // for NaCl). Here, we actually want to destroy the Instance, to test whether
265   // the destructor can run ExecuteScript successfully. That's why we have two
266   // separate calls to RunTest; the second one forces a navigation which
267   // destroys the instance from the prior RunTest.
268   // See test_instance_deprecated.cc for more information.
269   RunTest("Instance_SetupExecuteScriptAtInstanceShutdown");
270   RunTest("Instance_ExecuteScriptAtInstanceShutdown");
271 }
IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,Instance_ExecuteScriptAtInstanceShutdown)272 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,
273                        Instance_ExecuteScriptAtInstanceShutdown) {
274   // (See the comment for the in-process version of this test above)
275   RunTest("Instance_SetupExecuteScriptAtInstanceShutdown");
276   RunTest("Instance_ExecuteScriptAtInstanceShutdown");
277 }
278 
279 TEST_PPAPI_IN_PROCESS(Graphics2D)
TEST_PPAPI_OUT_OF_PROCESS(Graphics2D)280 TEST_PPAPI_OUT_OF_PROCESS(Graphics2D)
281 // Graphics2D_Dev isn't supported in NaCl, only test the other interfaces
282 // TODO(jhorwich) Enable when Graphics2D_Dev interfaces are proxied in NaCl.
283 TEST_PPAPI_NACL(Graphics2D_InvalidResource)
284 TEST_PPAPI_NACL(Graphics2D_InvalidSize)
285 TEST_PPAPI_NACL(Graphics2D_Humongous)
286 TEST_PPAPI_NACL(Graphics2D_InitToZero)
287 TEST_PPAPI_NACL(Graphics2D_Describe)
288 TEST_PPAPI_NACL(Graphics2D_Paint)
289 TEST_PPAPI_NACL(Graphics2D_Scroll)
290 TEST_PPAPI_NACL(Graphics2D_Replace)
291 TEST_PPAPI_NACL(Graphics2D_Flush)
292 TEST_PPAPI_NACL(Graphics2D_FlushOffscreenUpdate)
293 TEST_PPAPI_NACL(Graphics2D_BindNull)
294 
295 #if defined(OS_WIN)
296 #if defined(USE_AURA)
297 // These tests fail with the test compositor which is what's used by default for
298 // browser tests on Windows Aura. Renable when the software compositor is
299 // available.
300 #define MAYBE_IN_Graphics3D DISABLED_Graphics3D
301 #define MAYBE_OUT_Graphics3D DISABLED_Graphics3D
302 #define MAYBE_NACL_Graphics3D DISABLED_Graphics3D
303 #else  // defined(USE_AURA)
304 // In-process and NaCl tests are having flaky failures on Win: crbug.com/242252
305 #define MAYBE_IN_Graphics3D DISABLED_Graphics3D
306 #define MAYBE_OUT_Graphics3D Graphics3D
307 #define MAYBE_NACL_Graphics3D DISABLED_Graphics3D
308 #endif  // defined(USE_AURA)
309 #elif defined(OS_MACOSX)
310 // These tests fail when using the legacy software mode. Reenable when the
311 // software compositor is enabled crbug.com/286038
312 #define MAYBE_IN_Graphics3D DISABLED_Graphics3D
313 #define MAYBE_OUT_Graphics3D DISABLED_Graphics3D
314 #define MAYBE_NACL_Graphics3D DISABLED_Graphics3D
315 #else
316 // The tests are failing in-process. crbug.com/280282
317 #define MAYBE_IN_Graphics3D DISABLED_Graphics3D
318 #define MAYBE_OUT_Graphics3D Graphics3D
319 #define MAYBE_NACL_Graphics3D Graphics3D
320 #endif
321 TEST_PPAPI_IN_PROCESS(MAYBE_IN_Graphics3D)
322 TEST_PPAPI_OUT_OF_PROCESS(MAYBE_OUT_Graphics3D)
323 TEST_PPAPI_NACL(MAYBE_NACL_Graphics3D)
324 
325 TEST_PPAPI_IN_PROCESS(ImageData)
326 TEST_PPAPI_OUT_OF_PROCESS(ImageData)
327 TEST_PPAPI_NACL(ImageData)
328 
329 TEST_PPAPI_IN_PROCESS(BrowserFont)
330 // crbug.com/308949
331 #if defined(OS_WIN)
332 #define MAYBE_OUT_BrowserFont DISABLED_BrowserFont
333 #else
334 #define MAYBE_OUT_BrowserFont BrowserFont
335 #endif
336 TEST_PPAPI_OUT_OF_PROCESS(MAYBE_OUT_BrowserFont)
337 
338 TEST_PPAPI_IN_PROCESS(Buffer)
339 TEST_PPAPI_OUT_OF_PROCESS(Buffer)
340 
341 // TCPSocket tests.
342 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, TCPSocket) {
343   RunTestViaHTTP(
344       LIST_TEST(TCPSocket_Connect)
345       LIST_TEST(TCPSocket_ReadWrite)
346       LIST_TEST(TCPSocket_SetOption)
347       LIST_TEST(TCPSocket_Listen)
348       LIST_TEST(TCPSocket_Backlog)
349       LIST_TEST(TCPSocket_Interface_1_0)
350   );
351 }
IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest,TCPSocket)352 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, TCPSocket) {
353   RunTestViaHTTP(
354       LIST_TEST(TCPSocket_Connect)
355       LIST_TEST(TCPSocket_ReadWrite)
356       LIST_TEST(TCPSocket_SetOption)
357       LIST_TEST(TCPSocket_Listen)
358       LIST_TEST(TCPSocket_Backlog)
359       LIST_TEST(TCPSocket_Interface_1_0)
360   );
361 }
IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest,MAYBE_GLIBC (TCPSocket))362 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(TCPSocket)) {
363   RunTestViaHTTP(
364       LIST_TEST(TCPSocket_Connect)
365       LIST_TEST(TCPSocket_ReadWrite)
366       LIST_TEST(TCPSocket_SetOption)
367       LIST_TEST(TCPSocket_Listen)
368       LIST_TEST(TCPSocket_Backlog)
369       LIST_TEST(TCPSocket_Interface_1_0)
370   );
371 }
IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest,TCPSocket)372 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, TCPSocket) {
373   RunTestViaHTTP(
374       LIST_TEST(TCPSocket_Connect)
375       LIST_TEST(TCPSocket_ReadWrite)
376       LIST_TEST(TCPSocket_SetOption)
377       LIST_TEST(TCPSocket_Listen)
378       LIST_TEST(TCPSocket_Backlog)
379       LIST_TEST(TCPSocket_Interface_1_0)
380   );
381 }
382 
383 TEST_PPAPI_OUT_OF_PROCESS_WITH_SSL_SERVER(TCPSocketPrivate)
TEST_PPAPI_NACL_WITH_SSL_SERVER(TCPSocketPrivate)384 TEST_PPAPI_NACL_WITH_SSL_SERVER(TCPSocketPrivate)
385 
386 TEST_PPAPI_OUT_OF_PROCESS_WITH_SSL_SERVER(TCPSocketPrivateTrusted)
387 
388 // UDPSocket tests.
389 // UDPSocket_Broadcast is disabled for OSX because it requires root permissions
390 // on OSX 10.7+.
391 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, UDPSocket) {
392   RunTestViaHTTP(
393       LIST_TEST(UDPSocket_ReadWrite)
394       LIST_TEST(UDPSocket_SetOption)
395 #if !defined(OS_MACOSX)
396       LIST_TEST(UDPSocket_Broadcast)
397 #endif
398   );
399 }
IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest,UDPSocket)400 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, UDPSocket) {
401   RunTestViaHTTP(
402       LIST_TEST(UDPSocket_ReadWrite)
403       LIST_TEST(UDPSocket_SetOption)
404 #if !defined(OS_MACOSX)
405       LIST_TEST(UDPSocket_Broadcast)
406 #endif
407   );
408 }
IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest,MAYBE_GLIBC (UDPSocket))409 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(UDPSocket)) {
410   RunTestViaHTTP(
411       LIST_TEST(UDPSocket_ReadWrite)
412       LIST_TEST(UDPSocket_SetOption)
413 #if !defined(OS_MACOSX)
414       LIST_TEST(UDPSocket_Broadcast)
415 #endif
416   );
417 }
IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest,UDPSocket)418 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, UDPSocket) {
419   RunTestViaHTTP(
420       LIST_TEST(UDPSocket_ReadWrite)
421       LIST_TEST(UDPSocket_SetOption)
422 #if !defined(OS_MACOSX)
423       LIST_TEST(UDPSocket_Broadcast)
424 #endif
425   );
426 }
427 
428 // UDPSocketPrivate tests.
429 // UDPSocketPrivate_Broadcast is disabled for OSX because it requires
430 // root permissions on OSX 10.7+.
431 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(UDPSocketPrivate_Connect)
TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(UDPSocketPrivate_ConnectFailure)432 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(UDPSocketPrivate_ConnectFailure)
433 #if !defined(OS_MACOSX)
434 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(UDPSocketPrivate_Broadcast)
435 #endif  // !defined(OS_MACOSX)
436 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(UDPSocketPrivate_SetSocketFeatureErrors)
437 TEST_PPAPI_NACL(UDPSocketPrivate_Connect)
438 TEST_PPAPI_NACL(UDPSocketPrivate_ConnectFailure)
439 #if !defined(OS_MACOSX)
440 TEST_PPAPI_NACL(UDPSocketPrivate_Broadcast)
441 #endif  // !defined(OS_MACOSX)
442 TEST_PPAPI_NACL(UDPSocketPrivate_SetSocketFeatureErrors)
443 
444 TEST_PPAPI_NACL_DISALLOWED_SOCKETS(HostResolverPrivateDisallowed)
445 TEST_PPAPI_NACL_DISALLOWED_SOCKETS(TCPServerSocketPrivateDisallowed)
446 TEST_PPAPI_NACL_DISALLOWED_SOCKETS(TCPSocketPrivateDisallowed)
447 TEST_PPAPI_NACL_DISALLOWED_SOCKETS(UDPSocketPrivateDisallowed)
448 
449 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(TCPServerSocketPrivate)
450 TEST_PPAPI_NACL(TCPServerSocketPrivate)
451 
452 // HostResolver tests.
453 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, HostResolver) {
454   RunTestViaHTTP(
455       LIST_TEST(HostResolver_Empty)
456       LIST_TEST(HostResolver_Resolve)
457       LIST_TEST(HostResolver_ResolveIPv4)
458   );
459 }
IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest,HostResolver)460 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, HostResolver) {
461   RunTestViaHTTP(
462       LIST_TEST(HostResolver_Empty)
463       LIST_TEST(HostResolver_Resolve)
464       LIST_TEST(HostResolver_ResolveIPv4)
465   );
466 }
IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest,MAYBE_GLIBC (HostResolver))467 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(HostResolver)) {
468   RunTestViaHTTP(
469       LIST_TEST(HostResolver_Empty)
470       LIST_TEST(HostResolver_Resolve)
471       LIST_TEST(HostResolver_ResolveIPv4)
472   );
473 }
IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest,HostResolver)474 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, HostResolver) {
475   RunTestViaHTTP(
476       LIST_TEST(HostResolver_Empty)
477       LIST_TEST(HostResolver_Resolve)
478       LIST_TEST(HostResolver_ResolveIPv4)
479   );
480 }
481 
482 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(HostResolverPrivate_Resolve)
TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(HostResolverPrivate_ResolveIPv4)483 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(HostResolverPrivate_ResolveIPv4)
484 TEST_PPAPI_NACL(HostResolverPrivate_Resolve)
485 TEST_PPAPI_NACL(HostResolverPrivate_ResolveIPv4)
486 
487 // Flaky on official Windows builder. http://crbug.com/95005
488 #if defined(GOOGLE_CHROME_BUILD) && defined(OS_WIN)
489 #define MAYBE_PPAPIURLLoader DISABLED_URLLoader
490 #else
491 #define MAYBE_PPAPIURLLoader URLLoader
492 #endif
493 // URLLoader tests.
494 IN_PROC_BROWSER_TEST_F(PPAPITest, MAYBE_PPAPIURLLoader) {
495   RunTestViaHTTP(
496       LIST_TEST(URLLoader_BasicGET)
497       LIST_TEST(URLLoader_BasicPOST)
498       LIST_TEST(URLLoader_BasicFilePOST)
499       LIST_TEST(URLLoader_BasicFileRangePOST)
500       LIST_TEST(URLLoader_CompoundBodyPOST)
501       LIST_TEST(URLLoader_EmptyDataPOST)
502       LIST_TEST(URLLoader_BinaryDataPOST)
503       LIST_TEST(URLLoader_CustomRequestHeader)
504       LIST_TEST(URLLoader_FailsBogusContentLength)
505       LIST_TEST(URLLoader_StreamToFile)
506       LIST_TEST(URLLoader_UntrustedSameOriginRestriction)
507       LIST_TEST(URLLoader_TrustedSameOriginRestriction)
508       LIST_TEST(URLLoader_UntrustedCrossOriginRequest)
509       LIST_TEST(URLLoader_TrustedCrossOriginRequest)
510       LIST_TEST(URLLoader_UntrustedJavascriptURLRestriction)
511       // TODO(bbudge) Fix Javascript URLs for trusted loaders.
512       // http://crbug.com/103062
513       LIST_TEST(DISABLED_URLLoader_TrustedJavascriptURLRestriction)
514       LIST_TEST(URLLoader_UntrustedHttpRequests)
515       LIST_TEST(URLLoader_TrustedHttpRequests)
516       LIST_TEST(URLLoader_FollowURLRedirect)
517       LIST_TEST(URLLoader_AuditURLRedirect)
518       LIST_TEST(URLLoader_AbortCalls)
519       LIST_TEST(URLLoader_UntendedLoad)
520       LIST_TEST(URLLoader_PrefetchBufferThreshold)
521   );
522 }
523 // Timing out on Windows dbg. http://crbug.com/95005
524 #if defined(OS_WIN) && (!defined(NDEBUG) || defined(GOOGLE_CHROME_BUILD))
525 #define MAYBE_OutOfProcessURLLoader DISABLED_URLLoader
526 #else
527 #define MAYBE_OutOfProcessURLLoader URLLoader
528 #endif
IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,MAYBE_OutOfProcessURLLoader)529 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, MAYBE_OutOfProcessURLLoader) {
530   RunTestViaHTTP(
531       LIST_TEST(URLLoader_BasicGET)
532       LIST_TEST(URLLoader_BasicPOST)
533       LIST_TEST(URLLoader_BasicFilePOST)
534       LIST_TEST(URLLoader_BasicFileRangePOST)
535       LIST_TEST(URLLoader_CompoundBodyPOST)
536       LIST_TEST(URLLoader_EmptyDataPOST)
537       LIST_TEST(URLLoader_BinaryDataPOST)
538       LIST_TEST(URLLoader_CustomRequestHeader)
539       LIST_TEST(URLLoader_FailsBogusContentLength)
540       LIST_TEST(URLLoader_StreamToFile)
541       LIST_TEST(URLLoader_UntrustedSameOriginRestriction)
542       LIST_TEST(URLLoader_TrustedSameOriginRestriction)
543       LIST_TEST(URLLoader_UntrustedCrossOriginRequest)
544       LIST_TEST(URLLoader_TrustedCrossOriginRequest)
545       LIST_TEST(URLLoader_UntrustedJavascriptURLRestriction)
546       // TODO(bbudge) Fix Javascript URLs for trusted loaders.
547       // http://crbug.com/103062
548       LIST_TEST(DISABLED_URLLoader_TrustedJavascriptURLRestriction)
549       LIST_TEST(URLLoader_UntrustedHttpRequests)
550       LIST_TEST(URLLoader_TrustedHttpRequests)
551       LIST_TEST(URLLoader_FollowURLRedirect)
552       LIST_TEST(URLLoader_AuditURLRedirect)
553       LIST_TEST(URLLoader_AbortCalls)
554       LIST_TEST(URLLoader_UntendedLoad)
555       LIST_TEST(URLLoader_PrefetchBufferThreshold)
556   );
557 }
IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest,URLLoader)558 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, URLLoader) {
559   RunTestViaHTTP(
560       LIST_TEST(URLLoader_BasicGET)
561       LIST_TEST(URLLoader_BasicPOST)
562       LIST_TEST(URLLoader_BasicFilePOST)
563       LIST_TEST(URLLoader_BasicFileRangePOST)
564       LIST_TEST(URLLoader_CompoundBodyPOST)
565       LIST_TEST(URLLoader_EmptyDataPOST)
566       LIST_TEST(URLLoader_BinaryDataPOST)
567       LIST_TEST(URLLoader_CustomRequestHeader)
568       LIST_TEST(URLLoader_FailsBogusContentLength)
569       LIST_TEST(URLLoader_StreamToFile)
570       LIST_TEST(URLLoader_UntrustedSameOriginRestriction)
571       // We don't support Trusted APIs in NaCl.
572       LIST_TEST(DISABLED_URLLoader_TrustedSameOriginRestriction)
573       LIST_TEST(URLLoader_UntrustedCrossOriginRequest)
574       LIST_TEST(DISABLED_URLLoader_TrustedCrossOriginRequest)
575       LIST_TEST(URLLoader_UntrustedJavascriptURLRestriction)
576       // TODO(bbudge) Fix Javascript URLs for trusted loaders.
577       // http://crbug.com/103062
578       LIST_TEST(DISABLED_URLLoader_TrustedJavascriptURLRestriction)
579       LIST_TEST(URLLoader_UntrustedHttpRequests)
580       LIST_TEST(DISABLED_URLLoader_TrustedHttpRequests)
581       LIST_TEST(URLLoader_FollowURLRedirect)
582       LIST_TEST(URLLoader_AuditURLRedirect)
583       LIST_TEST(URLLoader_AbortCalls)
584       LIST_TEST(URLLoader_UntendedLoad)
585       LIST_TEST(URLLoader_PrefetchBufferThreshold)
586   );
587 }
588 // Flaky on 32-bit linux bot; http://crbug.com/308906
589 #if defined(OS_LINUX) && defined(ARCH_CPU_X86)
590 #define MAYBE_NaCl_Glibc_URLLoader DISABLED_URLLoader
591 #else
592 #define MAYBE_NaCl_Glibc_URLLoader URLLoader
593 #endif
IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest,MAYBE_NaCl_Glibc_URLLoader)594 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_NaCl_Glibc_URLLoader) {
595   RunTestViaHTTP(
596       LIST_TEST(URLLoader_BasicGET)
597       LIST_TEST(URLLoader_BasicPOST)
598       LIST_TEST(URLLoader_BasicFilePOST)
599       LIST_TEST(URLLoader_BasicFileRangePOST)
600       LIST_TEST(URLLoader_CompoundBodyPOST)
601       LIST_TEST(URLLoader_EmptyDataPOST)
602       LIST_TEST(URLLoader_BinaryDataPOST)
603       LIST_TEST(URLLoader_CustomRequestHeader)
604       LIST_TEST(URLLoader_FailsBogusContentLength)
605       LIST_TEST(URLLoader_StreamToFile)
606       LIST_TEST(URLLoader_UntrustedSameOriginRestriction)
607       // We don't support Trusted APIs in NaCl.
608       LIST_TEST(DISABLED_URLLoader_TrustedSameOriginRestriction)
609       LIST_TEST(URLLoader_UntrustedCrossOriginRequest)
610       LIST_TEST(DISABLED_URLLoader_TrustedCrossOriginRequest)
611       LIST_TEST(URLLoader_UntrustedJavascriptURLRestriction)
612       // TODO(bbudge) Fix Javascript URLs for trusted loaders.
613       // http://crbug.com/103062
614       LIST_TEST(DISABLED_URLLoader_TrustedJavascriptURLRestriction)
615       LIST_TEST(URLLoader_UntrustedHttpRequests)
616       LIST_TEST(DISABLED_URLLoader_TrustedHttpRequests)
617       LIST_TEST(URLLoader_FollowURLRedirect)
618       LIST_TEST(URLLoader_AuditURLRedirect)
619       LIST_TEST(URLLoader_AbortCalls)
620       LIST_TEST(URLLoader_UntendedLoad)
621       LIST_TEST(URLLoader_PrefetchBufferThreshold)
622   );
623 }
IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest,URLLoader)624 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, URLLoader) {
625   RunTestViaHTTP(
626       LIST_TEST(URLLoader_BasicGET)
627       LIST_TEST(URLLoader_BasicPOST)
628       LIST_TEST(URLLoader_BasicFilePOST)
629       LIST_TEST(URLLoader_BasicFileRangePOST)
630       LIST_TEST(URLLoader_CompoundBodyPOST)
631       LIST_TEST(URLLoader_EmptyDataPOST)
632       LIST_TEST(URLLoader_BinaryDataPOST)
633       LIST_TEST(URLLoader_CustomRequestHeader)
634       LIST_TEST(URLLoader_FailsBogusContentLength)
635       LIST_TEST(URLLoader_StreamToFile)
636       LIST_TEST(URLLoader_UntrustedSameOriginRestriction)
637       // We don't support Trusted APIs in NaCl.
638       LIST_TEST(DISABLED_URLLoader_TrustedSameOriginRestriction)
639       LIST_TEST(URLLoader_UntrustedCrossOriginRequest)
640       LIST_TEST(DISABLED_URLLoader_TrustedCrossOriginRequest)
641       LIST_TEST(URLLoader_UntrustedJavascriptURLRestriction)
642       // TODO(bbudge) Fix Javascript URLs for trusted loaders.
643       // http://crbug.com/103062
644       LIST_TEST(DISABLED_URLLoader_TrustedJavascriptURLRestriction)
645       LIST_TEST(URLLoader_UntrustedHttpRequests)
646       LIST_TEST(DISABLED_URLLoader_TrustedHttpRequests)
647       LIST_TEST(URLLoader_FollowURLRedirect)
648       LIST_TEST(URLLoader_AuditURLRedirect)
649       LIST_TEST(URLLoader_AbortCalls)
650       LIST_TEST(URLLoader_UntendedLoad)
651       LIST_TEST(URLLoader_PrefetchBufferThreshold)
652   );
653 }
654 
655 // URLRequestInfo tests.
656 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_CreateAndIsURLRequestInfo)
TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_CreateAndIsURLRequestInfo)657 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_CreateAndIsURLRequestInfo)
658 
659 // Timing out on Windows. http://crbug.com/129571
660 #if defined(OS_WIN)
661 #define MAYBE_URLRequest_CreateAndIsURLRequestInfo \
662   DISABLED_URLRequest_CreateAndIsURLRequestInfo
663 #else
664 #define MAYBE_URLRequest_CreateAndIsURLRequestInfo \
665     URLRequest_CreateAndIsURLRequestInfo
666 #endif
667 TEST_PPAPI_NACL(MAYBE_URLRequest_CreateAndIsURLRequestInfo)
668 
669 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_SetProperty)
670 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_SetProperty)
671 // http://crbug.com/167150
672 TEST_PPAPI_NACL(DISABLED_URLRequest_SetProperty)
673 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_AppendDataToBody)
674 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_AppendDataToBody)
675 TEST_PPAPI_NACL(URLRequest_AppendDataToBody)
676 TEST_PPAPI_IN_PROCESS_VIA_HTTP(DISABLED_URLRequest_AppendFileToBody)
677 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(DISABLED_URLRequest_AppendFileToBody)
678 TEST_PPAPI_NACL(DISABLED_URLRequest_AppendFileToBody)
679 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_Stress)
680 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_Stress)
681 TEST_PPAPI_NACL(URLRequest_Stress)
682 
683 TEST_PPAPI_IN_PROCESS(PaintAggregator)
684 TEST_PPAPI_OUT_OF_PROCESS(PaintAggregator)
685 TEST_PPAPI_NACL(PaintAggregator)
686 
687 // TODO(danakj): http://crbug.com/115286
688 TEST_PPAPI_IN_PROCESS(DISABLED_Scrollbar)
689 // http://crbug.com/89961
690 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, DISABLED_Scrollbar) {
691   RunTest("Scrollbar");
692 }
693 // TODO(danakj): http://crbug.com/115286
694 TEST_PPAPI_NACL(DISABLED_Scrollbar)
695 
TEST_PPAPI_IN_PROCESS(URLUtil)696 TEST_PPAPI_IN_PROCESS(URLUtil)
697 TEST_PPAPI_OUT_OF_PROCESS(URLUtil)
698 
699 TEST_PPAPI_IN_PROCESS(CharSet)
700 TEST_PPAPI_OUT_OF_PROCESS(CharSet)
701 
702 TEST_PPAPI_IN_PROCESS(Crypto)
703 TEST_PPAPI_OUT_OF_PROCESS(Crypto)
704 
705 TEST_PPAPI_IN_PROCESS(Var)
706 TEST_PPAPI_OUT_OF_PROCESS(Var)
707 TEST_PPAPI_NACL(Var)
708 
709 TEST_PPAPI_IN_PROCESS(VarResource)
710 TEST_PPAPI_OUT_OF_PROCESS(VarResource)
711 TEST_PPAPI_NACL(VarResource)
712 
713 // Flaky on mac, http://crbug.com/121107
714 #if defined(OS_MACOSX)
715 #define MAYBE_VarDeprecated DISABLED_VarDeprecated
716 #else
717 #define MAYBE_VarDeprecated VarDeprecated
718 #endif
719 
720 TEST_PPAPI_IN_PROCESS(VarDeprecated)
721 TEST_PPAPI_OUT_OF_PROCESS(MAYBE_VarDeprecated)
722 
723 // Windows defines 'PostMessage', so we have to undef it.
724 #ifdef PostMessage
725 #undef PostMessage
726 #endif
727 // PostMessage tests.
728 IN_PROC_BROWSER_TEST_F(PPAPITest, PostMessage) {
729   RunTestViaHTTP(
730       LIST_TEST(PostMessage_SendInInit)
731       LIST_TEST(PostMessage_SendingData)
732       LIST_TEST(PostMessage_SendingArrayBuffer)
733       LIST_TEST(DISABLED_PostMessage_SendingArray)
734       LIST_TEST(DISABLED_PostMessage_SendingDictionary)
735       LIST_TEST(DISABLED_PostMessage_SendingResource)
736       LIST_TEST(DISABLED_PostMessage_SendingComplexVar)
737       LIST_TEST(PostMessage_MessageEvent)
738       LIST_TEST(PostMessage_NoHandler)
739       LIST_TEST(PostMessage_ExtraParam)
740   );
741 }
742 
743 // Flaky: crbug.com/269530
744 #if defined(OS_WIN)
745 #define MAYBE_PostMessage DISABLED_PostMessage
746 #else
747 #define MAYBE_PostMessage PostMessage
748 #endif
IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,MAYBE_PostMessage)749 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, MAYBE_PostMessage) {
750   RunTestViaHTTP(
751       LIST_TEST(PostMessage_SendInInit)
752       LIST_TEST(PostMessage_SendingData)
753       LIST_TEST(PostMessage_SendingArrayBuffer)
754       LIST_TEST(PostMessage_SendingArray)
755       LIST_TEST(PostMessage_SendingDictionary)
756       LIST_TEST(PostMessage_SendingResource)
757       LIST_TEST(PostMessage_SendingComplexVar)
758       LIST_TEST(PostMessage_MessageEvent)
759       LIST_TEST(PostMessage_NoHandler)
760       LIST_TEST(PostMessage_ExtraParam)
761       LIST_TEST(PostMessage_NonMainThread)
762   );
763 }
IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest,PostMessage)764 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, PostMessage) {
765   RunTestViaHTTP(
766       LIST_TEST(PostMessage_SendInInit)
767       LIST_TEST(PostMessage_SendingData)
768       LIST_TEST(PostMessage_SendingArrayBuffer)
769       LIST_TEST(PostMessage_SendingArray)
770       LIST_TEST(PostMessage_SendingDictionary)
771       LIST_TEST(PostMessage_SendingResource)
772       LIST_TEST(PostMessage_SendingComplexVar)
773       LIST_TEST(PostMessage_MessageEvent)
774       LIST_TEST(PostMessage_NoHandler)
775       LIST_TEST(PostMessage_ExtraParam)
776       LIST_TEST(PostMessage_NonMainThread)
777   );
778 }
IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest,MAYBE_GLIBC (PostMessage))779 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(PostMessage)) {
780   RunTestViaHTTP(
781       LIST_TEST(PostMessage_SendInInit)
782       LIST_TEST(PostMessage_SendingData)
783       LIST_TEST(PostMessage_SendingArrayBuffer)
784       LIST_TEST(PostMessage_SendingArray)
785       LIST_TEST(PostMessage_SendingDictionary)
786       LIST_TEST(PostMessage_SendingResource)
787       LIST_TEST(PostMessage_SendingComplexVar)
788       LIST_TEST(PostMessage_MessageEvent)
789       LIST_TEST(PostMessage_NoHandler)
790       LIST_TEST(PostMessage_ExtraParam)
791       LIST_TEST(PostMessage_NonMainThread)
792   );
793 }
IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest,PostMessage)794 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, PostMessage) {
795   RunTestViaHTTP(
796       LIST_TEST(PostMessage_SendInInit)
797       LIST_TEST(PostMessage_SendingData)
798       LIST_TEST(PostMessage_SendingArrayBuffer)
799       LIST_TEST(PostMessage_SendingArray)
800       LIST_TEST(PostMessage_SendingDictionary)
801       LIST_TEST(PostMessage_SendingResource)
802       LIST_TEST(PostMessage_SendingComplexVar)
803       LIST_TEST(PostMessage_MessageEvent)
804       LIST_TEST(PostMessage_NoHandler)
805       LIST_TEST(PostMessage_ExtraParam)
806       LIST_TEST(PostMessage_NonMainThread)
807   );
808 }
809 
810 TEST_PPAPI_IN_PROCESS(Memory)
TEST_PPAPI_OUT_OF_PROCESS(Memory)811 TEST_PPAPI_OUT_OF_PROCESS(Memory)
812 TEST_PPAPI_NACL(Memory)
813 
814 TEST_PPAPI_IN_PROCESS(VideoDecoder)
815 TEST_PPAPI_OUT_OF_PROCESS(VideoDecoder)
816 
817 #if defined(OS_LINUX) && !defined(OS_CHROMEOS) && defined(USE_AURA)
818 // TODO(erg): linux_aura bringup: http://crbug.com/318961
819 #define MAYBE_FileIO DISABLED_FileIO
820 #else
821 #define MAYBE_FileIO FileIO
822 #endif
823 
824 // FileIO tests.
825 IN_PROC_BROWSER_TEST_F(PPAPITest, MAYBE_FileIO) {
826   RunTestViaHTTP(
827       LIST_TEST(FileIO_Open)
828       LIST_TEST(FileIO_OpenDirectory)
829       LIST_TEST(FileIO_AbortCalls)
830       LIST_TEST(FileIO_ParallelReads)
831       LIST_TEST(FileIO_ParallelWrites)
832       LIST_TEST(FileIO_NotAllowMixedReadWrite)
833       LIST_TEST(FileIO_ReadWriteSetLength)
834       LIST_TEST(FileIO_ReadToArrayWriteSetLength)
835       LIST_TEST(FileIO_TouchQuery)
836       LIST_TEST(FileIO_RequestOSFileHandle)
837       LIST_TEST(FileIO_RequestOSFileHandleWithOpenExclusive)
838       LIST_TEST(FileIO_Mmap)
839   );
840 }
IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,MAYBE_FileIO)841 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, MAYBE_FileIO) {
842   RunTestViaHTTP(
843       LIST_TEST(FileIO_Open)
844       LIST_TEST(FileIO_AbortCalls)
845       LIST_TEST(FileIO_ParallelReads)
846       LIST_TEST(FileIO_ParallelWrites)
847       LIST_TEST(FileIO_NotAllowMixedReadWrite)
848       LIST_TEST(FileIO_ReadWriteSetLength)
849       LIST_TEST(FileIO_ReadToArrayWriteSetLength)
850       LIST_TEST(FileIO_TouchQuery)
851       LIST_TEST(FileIO_RequestOSFileHandle)
852       LIST_TEST(FileIO_RequestOSFileHandleWithOpenExclusive)
853       LIST_TEST(FileIO_Mmap)
854   );
855 }
856 // Flaky on XP; times out, http://crbug.com/313401
857 #if defined(OS_WIN)
858 #define MAYBE_Nacl_Newlib_FileIO DISABLED_FileIO
859 #else
860 #define MAYBE_Nacl_Newlib_FileIO FileIO
861 #endif
IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest,MAYBE_Nacl_Newlib_FileIO)862 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, MAYBE_Nacl_Newlib_FileIO) {
863   RunTestViaHTTP(
864       LIST_TEST(FileIO_Open)
865       LIST_TEST(FileIO_AbortCalls)
866       LIST_TEST(FileIO_ParallelReads)
867       LIST_TEST(FileIO_ParallelWrites)
868       LIST_TEST(FileIO_NotAllowMixedReadWrite)
869       LIST_TEST(FileIO_ReadWriteSetLength)
870       LIST_TEST(FileIO_ReadToArrayWriteSetLength)
871       LIST_TEST(FileIO_TouchQuery)
872       LIST_TEST(FileIO_RequestOSFileHandle)
873       LIST_TEST(FileIO_RequestOSFileHandleWithOpenExclusive)
874       LIST_TEST(FileIO_Mmap)
875   );
876 }
877 // Flaky on 32-bit linux bot; http://crbug.com/308905
878 // Flaky on Windows too; http://crbug.com/321300
IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest,DISABLED_NaCl_Glibc_FileIO)879 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, DISABLED_NaCl_Glibc_FileIO) {
880   RunTestViaHTTP(
881       LIST_TEST(FileIO_Open)
882       LIST_TEST(FileIO_AbortCalls)
883       LIST_TEST(FileIO_ParallelReads)
884       LIST_TEST(FileIO_ParallelWrites)
885       LIST_TEST(FileIO_NotAllowMixedReadWrite)
886       LIST_TEST(FileIO_ReadWriteSetLength)
887       LIST_TEST(FileIO_ReadToArrayWriteSetLength)
888       LIST_TEST(FileIO_TouchQuery)
889       LIST_TEST(FileIO_RequestOSFileHandle)
890       LIST_TEST(FileIO_RequestOSFileHandleWithOpenExclusive)
891       LIST_TEST(FileIO_Mmap)
892   );
893 }
894 // Flaky on XP; times out, http://crbug.com/313205
895 #if defined(OS_WIN)
896 #define MAYBE_PNaCl_FileIO DISABLED_FileIO
897 #else
898 #define MAYBE_PNaCl_FileIO FileIO
899 #endif
IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest,MAYBE_PNaCl_FileIO)900 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, MAYBE_PNaCl_FileIO) {
901   RunTestViaHTTP(
902       LIST_TEST(FileIO_Open)
903       LIST_TEST(FileIO_AbortCalls)
904       LIST_TEST(FileIO_ParallelReads)
905       LIST_TEST(FileIO_ParallelWrites)
906       LIST_TEST(FileIO_NotAllowMixedReadWrite)
907       LIST_TEST(FileIO_ReadWriteSetLength)
908       LIST_TEST(FileIO_ReadToArrayWriteSetLength)
909       LIST_TEST(FileIO_TouchQuery)
910       LIST_TEST(FileIO_RequestOSFileHandle)
911       LIST_TEST(FileIO_RequestOSFileHandleWithOpenExclusive)
912       LIST_TEST(FileIO_Mmap)
913   );
914 }
915 
IN_PROC_BROWSER_TEST_F(PPAPITest,FileRef)916 IN_PROC_BROWSER_TEST_F(PPAPITest, FileRef) {
917   RunTestViaHTTP(
918       LIST_TEST(FileRef_Create)
919       LIST_TEST(FileRef_GetFileSystemType)
920       LIST_TEST(FileRef_GetName)
921       LIST_TEST(FileRef_GetPath)
922       LIST_TEST(FileRef_GetParent)
923       LIST_TEST(FileRef_MakeDirectory)
924       LIST_TEST(FileRef_QueryAndTouchFile)
925       LIST_TEST(FileRef_DeleteFileAndDirectory)
926       LIST_TEST(FileRef_RenameFileAndDirectory)
927       LIST_TEST(FileRef_Query)
928       LIST_TEST(FileRef_FileNameEscaping)
929       LIST_TEST(FileRef_ReadDirectoryEntries)
930   );
931 }
932 // OutOfProcessPPAPITest.FileRef times out fairly often.
933 // http://crbug.com/241646
IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,FileRef)934 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, FileRef) {
935   RunTestViaHTTP(
936       LIST_TEST(FileRef_Create)
937       LIST_TEST(FileRef_GetFileSystemType)
938       LIST_TEST(FileRef_GetName)
939       LIST_TEST(FileRef_GetPath)
940       LIST_TEST(FileRef_GetParent)
941       LIST_TEST(FileRef_MakeDirectory)
942       LIST_TEST(FileRef_QueryAndTouchFile)
943       LIST_TEST(FileRef_DeleteFileAndDirectory)
944       LIST_TEST(FileRef_RenameFileAndDirectory)
945       LIST_TEST(FileRef_Query)
946       LIST_TEST(FileRef_FileNameEscaping)
947       LIST_TEST(DISABLED_FileRef_ReadDirectoryEntries)
948   );
949 }
IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest,FileRef)950 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, FileRef) {
951   RunTestViaHTTP(
952       LIST_TEST(FileRef_Create)
953       LIST_TEST(FileRef_GetFileSystemType)
954       LIST_TEST(FileRef_GetName)
955       LIST_TEST(FileRef_GetPath)
956       LIST_TEST(FileRef_GetParent)
957       LIST_TEST(FileRef_MakeDirectory)
958       LIST_TEST(FileRef_QueryAndTouchFile)
959       LIST_TEST(FileRef_DeleteFileAndDirectory)
960       LIST_TEST(FileRef_RenameFileAndDirectory)
961       LIST_TEST(FileRef_Query)
962       LIST_TEST(FileRef_FileNameEscaping)
963       LIST_TEST(DISABLED_FileRef_ReadDirectoryEntries)
964   );
965 }
966 // Flaky on 32-bit linux bot; http://crbug.com/308908
967 #if defined(OS_LINUX) && defined(ARCH_CPU_X86)
968 #define MAYBE_NaCl_Glibc_FileRef DISABLED_FileRef
969 #else
970 #define MAYBE_NaCl_Glibc_FileRef FileRef
971 #endif
IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest,MAYBE_NaCl_Glibc_FileRef)972 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_NaCl_Glibc_FileRef) {
973   RunTestViaHTTP(
974       LIST_TEST(FileRef_Create)
975       LIST_TEST(FileRef_GetFileSystemType)
976       LIST_TEST(FileRef_GetName)
977       LIST_TEST(FileRef_GetPath)
978       LIST_TEST(FileRef_GetParent)
979       LIST_TEST(FileRef_MakeDirectory)
980       LIST_TEST(FileRef_QueryAndTouchFile)
981       LIST_TEST(FileRef_DeleteFileAndDirectory)
982       LIST_TEST(FileRef_RenameFileAndDirectory)
983       LIST_TEST(FileRef_Query)
984       LIST_TEST(FileRef_FileNameEscaping)
985       LIST_TEST(DISABLED_FileRef_ReadDirectoryEntries)
986   );
987 }
IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest,FileRef)988 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, FileRef) {
989   RunTestViaHTTP(
990       LIST_TEST(FileRef_Create)
991       LIST_TEST(FileRef_GetFileSystemType)
992       LIST_TEST(FileRef_GetName)
993       LIST_TEST(FileRef_GetPath)
994       LIST_TEST(FileRef_GetParent)
995       LIST_TEST(FileRef_MakeDirectory)
996       LIST_TEST(FileRef_QueryAndTouchFile)
997       LIST_TEST(FileRef_DeleteFileAndDirectory)
998       LIST_TEST(FileRef_RenameFileAndDirectory)
999       LIST_TEST(FileRef_Query)
1000       LIST_TEST(FileRef_FileNameEscaping)
1001       LIST_TEST(DISABLED_FileRef_ReadDirectoryEntries)
1002   );
1003 }
1004 
1005 TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileSystem)
TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileSystem)1006 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileSystem)
1007 
1008 // PPAPINaClTest.FileSystem times out consistently on Windows and Mac.
1009 // http://crbug.com/130372
1010 #if defined(OS_MACOSX) || defined(OS_WIN)
1011 #define MAYBE_FileSystem DISABLED_FileSystem
1012 #else
1013 #define MAYBE_FileSystem FileSystem
1014 #endif
1015 
1016 TEST_PPAPI_NACL(MAYBE_FileSystem)
1017 
1018 #if defined(OS_MACOSX)
1019 // http://crbug.com/103912
1020 #define MAYBE_Fullscreen DISABLED_Fullscreen
1021 #elif defined(OS_LINUX)
1022 // http://crbug.com/146008
1023 #define MAYBE_Fullscreen DISABLED_Fullscreen
1024 #else
1025 #define MAYBE_Fullscreen Fullscreen
1026 #endif
1027 
1028 TEST_PPAPI_IN_PROCESS_VIA_HTTP(MAYBE_Fullscreen)
1029 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(MAYBE_Fullscreen)
1030 TEST_PPAPI_NACL(MAYBE_Fullscreen)
1031 
1032 TEST_PPAPI_OUT_OF_PROCESS(X509CertificatePrivate)
1033 
1034 // There is no proxy. This is used for PDF metrics reporting, and PDF only
1035 // runs in process, so there's currently no need for a proxy.
1036 TEST_PPAPI_IN_PROCESS(UMA)
1037 
1038 // NetAddress tests
1039 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, NetAddress) {
1040   RunTestViaHTTP(
1041       LIST_TEST(NetAddress_IPv4Address)
1042       LIST_TEST(NetAddress_IPv6Address)
1043       LIST_TEST(NetAddress_DescribeAsString)
1044   );
1045 }
IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest,NetAddress)1046 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, NetAddress) {
1047   RunTestViaHTTP(
1048       LIST_TEST(NetAddress_IPv4Address)
1049       LIST_TEST(NetAddress_IPv6Address)
1050       LIST_TEST(NetAddress_DescribeAsString)
1051   );
1052 }
IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest,MAYBE_GLIBC (NetAddress))1053 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(NetAddress)) {
1054   RunTestViaHTTP(
1055       LIST_TEST(NetAddress_IPv4Address)
1056       LIST_TEST(NetAddress_IPv6Address)
1057       LIST_TEST(NetAddress_DescribeAsString)
1058   );
1059 }
IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest,NetAddress)1060 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, NetAddress) {
1061   RunTestViaHTTP(
1062       LIST_TEST(NetAddress_IPv4Address)
1063       LIST_TEST(NetAddress_IPv6Address)
1064       LIST_TEST(NetAddress_DescribeAsString)
1065   );
1066 }
1067 
IN_PROC_BROWSER_TEST_F(PPAPITest,NetAddressPrivate)1068 IN_PROC_BROWSER_TEST_F(PPAPITest, NetAddressPrivate) {
1069   RunTestViaHTTP(
1070       LIST_TEST(NetAddressPrivate_AreEqual)
1071       LIST_TEST(NetAddressPrivate_AreHostsEqual)
1072       LIST_TEST(NetAddressPrivate_Describe)
1073       LIST_TEST(NetAddressPrivate_ReplacePort)
1074       LIST_TEST(NetAddressPrivate_GetAnyAddress)
1075       LIST_TEST(NetAddressPrivate_DescribeIPv6)
1076       LIST_TEST(NetAddressPrivate_GetFamily)
1077       LIST_TEST(NetAddressPrivate_GetPort)
1078       LIST_TEST(NetAddressPrivate_GetAddress)
1079       LIST_TEST(NetAddressPrivate_GetScopeID)
1080   );
1081 }
IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,NetAddressPrivate)1082 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, NetAddressPrivate) {
1083   RunTestViaHTTP(
1084       LIST_TEST(NetAddressPrivate_AreEqual)
1085       LIST_TEST(NetAddressPrivate_AreHostsEqual)
1086       LIST_TEST(NetAddressPrivate_Describe)
1087       LIST_TEST(NetAddressPrivate_ReplacePort)
1088       LIST_TEST(NetAddressPrivate_GetAnyAddress)
1089       LIST_TEST(NetAddressPrivate_DescribeIPv6)
1090       LIST_TEST(NetAddressPrivate_GetFamily)
1091       LIST_TEST(NetAddressPrivate_GetPort)
1092       LIST_TEST(NetAddressPrivate_GetAddress)
1093       LIST_TEST(NetAddressPrivate_GetScopeID)
1094   );
1095 }
IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest,NetAddressPrivate)1096 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, NetAddressPrivate) {
1097   RunTestViaHTTP(
1098       LIST_TEST(NetAddressPrivateUntrusted_AreEqual)
1099       LIST_TEST(NetAddressPrivateUntrusted_AreHostsEqual)
1100       LIST_TEST(NetAddressPrivateUntrusted_Describe)
1101       LIST_TEST(NetAddressPrivateUntrusted_ReplacePort)
1102       LIST_TEST(NetAddressPrivateUntrusted_GetAnyAddress)
1103       LIST_TEST(NetAddressPrivateUntrusted_GetFamily)
1104       LIST_TEST(NetAddressPrivateUntrusted_GetPort)
1105       LIST_TEST(NetAddressPrivateUntrusted_GetAddress)
1106   );
1107 }
IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest,MAYBE_GLIBC (NetAddressPrivate))1108 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(NetAddressPrivate)) {
1109   RunTestViaHTTP(
1110       LIST_TEST(NetAddressPrivateUntrusted_AreEqual)
1111       LIST_TEST(NetAddressPrivateUntrusted_AreHostsEqual)
1112       LIST_TEST(NetAddressPrivateUntrusted_Describe)
1113       LIST_TEST(NetAddressPrivateUntrusted_ReplacePort)
1114       LIST_TEST(NetAddressPrivateUntrusted_GetAnyAddress)
1115       LIST_TEST(NetAddressPrivateUntrusted_GetFamily)
1116       LIST_TEST(NetAddressPrivateUntrusted_GetPort)
1117       LIST_TEST(NetAddressPrivateUntrusted_GetAddress)
1118   );
1119 }
IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest,NetAddressPrivate)1120 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, NetAddressPrivate) {
1121   RunTestViaHTTP(
1122       LIST_TEST(NetAddressPrivateUntrusted_AreEqual)
1123       LIST_TEST(NetAddressPrivateUntrusted_AreHostsEqual)
1124       LIST_TEST(NetAddressPrivateUntrusted_Describe)
1125       LIST_TEST(NetAddressPrivateUntrusted_ReplacePort)
1126       LIST_TEST(NetAddressPrivateUntrusted_GetAnyAddress)
1127       LIST_TEST(NetAddressPrivateUntrusted_GetFamily)
1128       LIST_TEST(NetAddressPrivateUntrusted_GetPort)
1129       LIST_TEST(NetAddressPrivateUntrusted_GetAddress)
1130   );
1131 }
1132 
1133 // NetworkMonitor tests.
IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,NetworkMonitor)1134 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, NetworkMonitor) {
1135   RunTestViaHTTP(
1136       LIST_TEST(NetworkMonitor_Basic)
1137       LIST_TEST(NetworkMonitor_2Monitors)
1138       LIST_TEST(NetworkMonitor_DeleteInCallback)
1139   );
1140 }
IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest,NetworkMonitor)1141 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, NetworkMonitor) {
1142   RunTestViaHTTP(
1143       LIST_TEST(NetworkMonitor_Basic)
1144       LIST_TEST(NetworkMonitor_2Monitors)
1145       LIST_TEST(NetworkMonitor_DeleteInCallback)
1146   );
1147 }
IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest,MAYBE_GLIBC (NetworkMonitor))1148 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(NetworkMonitor)) {
1149   RunTestViaHTTP(
1150       LIST_TEST(NetworkMonitor_Basic)
1151       LIST_TEST(NetworkMonitor_2Monitors)
1152       LIST_TEST(NetworkMonitor_DeleteInCallback)
1153   );
1154 }
IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest,NetworkMonitor)1155 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, NetworkMonitor) {
1156   RunTestViaHTTP(
1157       LIST_TEST(NetworkMonitor_Basic)
1158       LIST_TEST(NetworkMonitor_2Monitors)
1159       LIST_TEST(NetworkMonitor_DeleteInCallback)
1160   );
1161 }
1162 
1163 // Flash tests.
IN_PROC_BROWSER_TEST_F(PPAPITest,Flash)1164 IN_PROC_BROWSER_TEST_F(PPAPITest, Flash) {
1165   RunTestViaHTTP(
1166       LIST_TEST(Flash_SetInstanceAlwaysOnTop)
1167       LIST_TEST(Flash_GetCommandLineArgs)
1168   );
1169 }
IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,Flash)1170 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, Flash) {
1171   RunTestViaHTTP(
1172       LIST_TEST(Flash_SetInstanceAlwaysOnTop)
1173       LIST_TEST(Flash_GetCommandLineArgs)
1174   );
1175 }
1176 
1177 // In-process WebSocket tests
IN_PROC_BROWSER_TEST_F(PPAPITest,WebSocket)1178 IN_PROC_BROWSER_TEST_F(PPAPITest, WebSocket) {
1179   RunTestWithWebSocketServer(
1180       LIST_TEST(WebSocket_IsWebSocket)
1181       LIST_TEST(WebSocket_UninitializedPropertiesAccess)
1182       LIST_TEST(WebSocket_InvalidConnect)
1183       LIST_TEST(WebSocket_Protocols)
1184       LIST_TEST(WebSocket_GetURL)
1185       LIST_TEST(WebSocket_ValidConnect)
1186       LIST_TEST(WebSocket_InvalidClose)
1187       LIST_TEST(WebSocket_ValidClose)
1188       LIST_TEST(WebSocket_GetProtocol)
1189       LIST_TEST(WebSocket_TextSendReceive)
1190       LIST_TEST(WebSocket_BinarySendReceive)
1191       LIST_TEST(WebSocket_StressedSendReceive)
1192       LIST_TEST(WebSocket_BufferedAmount)
1193       LIST_TEST(WebSocket_AbortCallsWithCallback)
1194       LIST_TEST(WebSocket_AbortSendMessageCall)
1195       LIST_TEST(WebSocket_AbortCloseCall)
1196       LIST_TEST(WebSocket_AbortReceiveMessageCall)
1197       LIST_TEST(WebSocket_CcInterfaces)
1198       LIST_TEST(WebSocket_UtilityInvalidConnect)
1199       LIST_TEST(WebSocket_UtilityProtocols)
1200       LIST_TEST(WebSocket_UtilityGetURL)
1201       LIST_TEST(WebSocket_UtilityValidConnect)
1202       LIST_TEST(WebSocket_UtilityInvalidClose)
1203       LIST_TEST(WebSocket_UtilityValidClose)
1204       LIST_TEST(WebSocket_UtilityGetProtocol)
1205       LIST_TEST(WebSocket_UtilityTextSendReceive)
1206       LIST_TEST(WebSocket_UtilityBinarySendReceive)
1207       LIST_TEST(WebSocket_UtilityBufferedAmount));
1208 }
1209 
1210 // Out-of-process WebSocket tests
IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,WebSocket)1211 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, WebSocket) {
1212   RunTestWithWebSocketServer(
1213       LIST_TEST(WebSocket_IsWebSocket)
1214       LIST_TEST(WebSocket_UninitializedPropertiesAccess)
1215       LIST_TEST(WebSocket_InvalidConnect)
1216       LIST_TEST(WebSocket_Protocols)
1217       LIST_TEST(WebSocket_GetURL)
1218       LIST_TEST(WebSocket_ValidConnect)
1219       LIST_TEST(WebSocket_InvalidClose)
1220       LIST_TEST(WebSocket_ValidClose)
1221       LIST_TEST(WebSocket_GetProtocol)
1222       LIST_TEST(WebSocket_TextSendReceive)
1223       LIST_TEST(WebSocket_BinarySendReceive)
1224       LIST_TEST(WebSocket_StressedSendReceive)
1225       LIST_TEST(WebSocket_BufferedAmount)
1226       LIST_TEST(WebSocket_AbortCallsWithCallback)
1227       LIST_TEST(WebSocket_AbortSendMessageCall)
1228       LIST_TEST(WebSocket_AbortCloseCall)
1229       LIST_TEST(WebSocket_AbortReceiveMessageCall)
1230       LIST_TEST(WebSocket_CcInterfaces)
1231       LIST_TEST(WebSocket_UtilityInvalidConnect)
1232       LIST_TEST(WebSocket_UtilityProtocols)
1233       LIST_TEST(WebSocket_UtilityGetURL)
1234       LIST_TEST(WebSocket_UtilityValidConnect)
1235       LIST_TEST(WebSocket_UtilityInvalidClose)
1236       LIST_TEST(WebSocket_UtilityValidClose)
1237       LIST_TEST(WebSocket_UtilityGetProtocol)
1238       LIST_TEST(WebSocket_UtilityTextSendReceive)
1239       LIST_TEST(WebSocket_UtilityBinarySendReceive)
1240       LIST_TEST(WebSocket_UtilityBufferedAmount));
1241 }
1242 
1243 // NaClNewlib WebSocket tests
IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest,WebSocket)1244 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, WebSocket) {
1245   RunTestWithWebSocketServer(
1246       LIST_TEST(WebSocket_IsWebSocket)
1247       LIST_TEST(WebSocket_UninitializedPropertiesAccess)
1248       LIST_TEST(WebSocket_InvalidConnect)
1249       LIST_TEST(WebSocket_Protocols)
1250       LIST_TEST(WebSocket_GetURL)
1251       LIST_TEST(WebSocket_ValidConnect)
1252       LIST_TEST(WebSocket_InvalidClose)
1253       LIST_TEST(WebSocket_ValidClose)
1254       LIST_TEST(WebSocket_GetProtocol)
1255       LIST_TEST(WebSocket_TextSendReceive)
1256       LIST_TEST(WebSocket_BinarySendReceive)
1257       LIST_TEST(WebSocket_StressedSendReceive)
1258       LIST_TEST(WebSocket_BufferedAmount)
1259       LIST_TEST(WebSocket_AbortCallsWithCallback)
1260       LIST_TEST(WebSocket_AbortSendMessageCall)
1261       LIST_TEST(WebSocket_AbortCloseCall)
1262       LIST_TEST(WebSocket_AbortReceiveMessageCall)
1263       LIST_TEST(WebSocket_CcInterfaces)
1264       LIST_TEST(WebSocket_UtilityInvalidConnect)
1265       LIST_TEST(WebSocket_UtilityProtocols)
1266       LIST_TEST(WebSocket_UtilityGetURL)
1267       LIST_TEST(WebSocket_UtilityValidConnect)
1268       LIST_TEST(WebSocket_UtilityInvalidClose)
1269       LIST_TEST(WebSocket_UtilityValidClose)
1270       LIST_TEST(WebSocket_UtilityGetProtocol)
1271       LIST_TEST(WebSocket_UtilityTextSendReceive)
1272       LIST_TEST(WebSocket_UtilityBinarySendReceive)
1273       LIST_TEST(WebSocket_UtilityBufferedAmount));
1274 }
1275 
1276 // NaClGLibc WebSocket tests
IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest,MAYBE_GLIBC (WebSocket))1277 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(WebSocket)) {
1278   RunTestWithWebSocketServer(
1279       LIST_TEST(WebSocket_IsWebSocket)
1280       LIST_TEST(WebSocket_UninitializedPropertiesAccess)
1281       LIST_TEST(WebSocket_InvalidConnect)
1282       LIST_TEST(WebSocket_Protocols)
1283       LIST_TEST(WebSocket_GetURL)
1284       LIST_TEST(WebSocket_ValidConnect)
1285       LIST_TEST(WebSocket_InvalidClose)
1286       LIST_TEST(WebSocket_ValidClose)
1287       LIST_TEST(WebSocket_GetProtocol)
1288       LIST_TEST(WebSocket_TextSendReceive)
1289       LIST_TEST(WebSocket_BinarySendReceive)
1290       LIST_TEST(WebSocket_StressedSendReceive)
1291       LIST_TEST(WebSocket_BufferedAmount)
1292       LIST_TEST(WebSocket_AbortCallsWithCallback)
1293       LIST_TEST(WebSocket_AbortSendMessageCall)
1294       LIST_TEST(WebSocket_AbortCloseCall)
1295       LIST_TEST(WebSocket_AbortReceiveMessageCall)
1296       LIST_TEST(WebSocket_CcInterfaces)
1297       LIST_TEST(WebSocket_UtilityInvalidConnect)
1298       LIST_TEST(WebSocket_UtilityProtocols)
1299       LIST_TEST(WebSocket_UtilityGetURL)
1300       LIST_TEST(WebSocket_UtilityValidConnect)
1301       LIST_TEST(WebSocket_UtilityInvalidClose)
1302       LIST_TEST(WebSocket_UtilityValidClose)
1303       LIST_TEST(WebSocket_UtilityGetProtocol)
1304       LIST_TEST(WebSocket_UtilityTextSendReceive)
1305       LIST_TEST(WebSocket_UtilityBinarySendReceive)
1306       LIST_TEST(WebSocket_UtilityBufferedAmount));
1307 }
1308 
1309 // PNaCl WebSocket tests
IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest,WebSocket)1310 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, WebSocket) {
1311   RunTestWithWebSocketServer(
1312       LIST_TEST(WebSocket_IsWebSocket)
1313       LIST_TEST(WebSocket_UninitializedPropertiesAccess)
1314       LIST_TEST(WebSocket_InvalidConnect)
1315       LIST_TEST(WebSocket_Protocols)
1316       LIST_TEST(WebSocket_GetURL)
1317       LIST_TEST(WebSocket_ValidConnect)
1318       LIST_TEST(WebSocket_InvalidClose)
1319       LIST_TEST(WebSocket_ValidClose)
1320       LIST_TEST(WebSocket_GetProtocol)
1321       LIST_TEST(WebSocket_TextSendReceive)
1322       LIST_TEST(WebSocket_BinarySendReceive)
1323       LIST_TEST(WebSocket_StressedSendReceive)
1324       LIST_TEST(WebSocket_BufferedAmount)
1325       LIST_TEST(WebSocket_AbortCallsWithCallback)
1326       LIST_TEST(WebSocket_AbortSendMessageCall)
1327       LIST_TEST(WebSocket_AbortCloseCall)
1328       LIST_TEST(WebSocket_AbortReceiveMessageCall)
1329       LIST_TEST(WebSocket_CcInterfaces)
1330       LIST_TEST(WebSocket_UtilityInvalidConnect)
1331       LIST_TEST(WebSocket_UtilityProtocols)
1332       LIST_TEST(WebSocket_UtilityGetURL)
1333       LIST_TEST(WebSocket_UtilityValidConnect)
1334       LIST_TEST(WebSocket_UtilityInvalidClose)
1335       LIST_TEST(WebSocket_UtilityValidClose)
1336       LIST_TEST(WebSocket_UtilityGetProtocol)
1337       LIST_TEST(WebSocket_UtilityTextSendReceive)
1338       LIST_TEST(WebSocket_UtilityBinarySendReceive)
1339       LIST_TEST(WebSocket_UtilityBufferedAmount));
1340 }
1341 
1342 
1343 // In-process AudioConfig tests
IN_PROC_BROWSER_TEST_F(PPAPITest,AudioConfig)1344 IN_PROC_BROWSER_TEST_F(PPAPITest, AudioConfig) {
1345   RunTest(
1346       LIST_TEST(AudioConfig_RecommendSampleRate)
1347       LIST_TEST(AudioConfig_ValidConfigs)
1348       LIST_TEST(AudioConfig_InvalidConfigs));
1349 }
1350 
1351 // Out-of-process AudioConfig tests
IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,AudioConfig)1352 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, AudioConfig) {
1353   RunTest(
1354       LIST_TEST(AudioConfig_RecommendSampleRate)
1355       LIST_TEST(AudioConfig_ValidConfigs)
1356       LIST_TEST(AudioConfig_InvalidConfigs));
1357 }
1358 
1359 // NaClNewlib AudioConfig tests
IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest,AudioConfig)1360 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, AudioConfig) {
1361   RunTestViaHTTP(
1362       LIST_TEST(AudioConfig_RecommendSampleRate)
1363       LIST_TEST(AudioConfig_ValidConfigs)
1364       LIST_TEST(AudioConfig_InvalidConfigs));
1365 }
1366 
1367 // NaClGLibc AudioConfig tests
IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest,MAYBE_GLIBC (AudioConfig))1368 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(AudioConfig)) {
1369   RunTestViaHTTP(
1370       LIST_TEST(AudioConfig_RecommendSampleRate)
1371       LIST_TEST(AudioConfig_ValidConfigs)
1372       LIST_TEST(AudioConfig_InvalidConfigs));
1373 }
1374 
1375 // PNaCl AudioConfig tests
IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest,AudioConfig)1376 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, AudioConfig) {
1377   RunTestViaHTTP(
1378       LIST_TEST(AudioConfig_RecommendSampleRate)
1379       LIST_TEST(AudioConfig_ValidConfigs)
1380       LIST_TEST(AudioConfig_InvalidConfigs));
1381 }
1382 
1383 // Flaky on ChromeOS dbg, http://crbug.com/277564.
1384 #if defined(OS_CHROMEOS) && !defined(NDEBUG)
1385 #define MAYBE_Audio DISABLED_Audio
1386 #else
1387 #define MAYBE_Audio Audio
1388 #endif
IN_PROC_BROWSER_TEST_F(PPAPITest,MAYBE_Audio)1389 IN_PROC_BROWSER_TEST_F(PPAPITest, MAYBE_Audio) {
1390   RunTest(LIST_TEST(Audio_Creation)
1391           LIST_TEST(Audio_DestroyNoStop)
1392           LIST_TEST(Audio_Failures)
1393           LIST_TEST(Audio_AudioCallback1)
1394           LIST_TEST(Audio_AudioCallback2)
1395           LIST_TEST(Audio_AudioCallback3)
1396           LIST_TEST(Audio_AudioCallback4));
1397 }
IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,Audio)1398 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, Audio) {
1399   RunTest(LIST_TEST(Audio_Creation)
1400           LIST_TEST(Audio_DestroyNoStop)
1401           LIST_TEST(Audio_Failures)
1402           LIST_TEST(Audio_AudioCallback1)
1403           LIST_TEST(Audio_AudioCallback2)
1404           LIST_TEST(Audio_AudioCallback3)
1405           LIST_TEST(Audio_AudioCallback4));
1406 }
IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest,Audio)1407 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, Audio) {
1408   RunTestViaHTTP(LIST_TEST(Audio_Creation)
1409                  LIST_TEST(Audio_DestroyNoStop)
1410                  LIST_TEST(Audio_Failures)
1411                  LIST_TEST(Audio_AudioCallback1)
1412                  LIST_TEST(Audio_AudioCallback2)
1413                  LIST_TEST(Audio_AudioCallback3)
1414                  LIST_TEST(Audio_AudioCallback4));
1415 }
IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest,MAYBE_GLIBC (Audio))1416 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(Audio)) {
1417   RunTestViaHTTP(LIST_TEST(Audio_Creation)
1418                  LIST_TEST(Audio_DestroyNoStop)
1419                  LIST_TEST(Audio_Failures)
1420                  LIST_TEST(Audio_AudioCallback1)
1421                  LIST_TEST(Audio_AudioCallback2)
1422                  LIST_TEST(Audio_AudioCallback3)
1423                  LIST_TEST(Audio_AudioCallback4));
1424 }
IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest,Audio)1425 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, Audio) {
1426   RunTestViaHTTP(LIST_TEST(Audio_Creation)
1427                  LIST_TEST(Audio_DestroyNoStop)
1428                  LIST_TEST(Audio_Failures)
1429                  LIST_TEST(Audio_AudioCallback1)
1430                  LIST_TEST(Audio_AudioCallback2)
1431                  LIST_TEST(Audio_AudioCallback3)
1432                  LIST_TEST(Audio_AudioCallback4));
1433 }
1434 
1435 TEST_PPAPI_IN_PROCESS(View_CreatedVisible);
1436 TEST_PPAPI_OUT_OF_PROCESS(View_CreatedVisible);
1437 TEST_PPAPI_NACL(View_CreatedVisible);
1438 // This test ensures that plugins created in a background tab have their
1439 // initial visibility set to false. We don't bother testing in-process for this
1440 // custom test since the out of process code also exercises in-process.
1441 
IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,View_CreateInvisible)1442 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, View_CreateInvisible) {
1443   // Make a second tab in the foreground.
1444   GURL url = GetTestFileUrl("View_CreatedInvisible");
1445   chrome::NavigateParams params(browser(), url, content::PAGE_TRANSITION_LINK);
1446   params.disposition = NEW_BACKGROUND_TAB;
1447   ui_test_utils::NavigateToURL(&params);
1448 }
1449 
1450 // This test messes with tab visibility so is custom.
IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,View_PageHideShow)1451 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, View_PageHideShow) {
1452   // The plugin will be loaded in the foreground tab and will send us a message.
1453   PPAPITestMessageHandler handler;
1454   JavascriptTestObserver observer(
1455       browser()->tab_strip_model()->GetActiveWebContents()->GetRenderViewHost(),
1456       &handler);
1457 
1458   GURL url = GetTestFileUrl("View_PageHideShow");
1459   ui_test_utils::NavigateToURL(browser(), url);
1460 
1461   ASSERT_TRUE(observer.Run()) << handler.error_message();
1462   EXPECT_STREQ("TestPageHideShow:Created", handler.message().c_str());
1463   observer.Reset();
1464 
1465   // Make a new tab to cause the original one to hide, this should trigger the
1466   // next phase of the test.
1467   chrome::NavigateParams params(browser(), GURL(content::kAboutBlankURL),
1468                                 content::PAGE_TRANSITION_LINK);
1469   params.disposition = NEW_FOREGROUND_TAB;
1470   ui_test_utils::NavigateToURL(&params);
1471 
1472   // Wait until the test acks that it got hidden.
1473   ASSERT_TRUE(observer.Run()) << handler.error_message();
1474   EXPECT_STREQ("TestPageHideShow:Hidden", handler.message().c_str());
1475   observer.Reset();
1476 
1477   // Switch back to the test tab.
1478   browser()->tab_strip_model()->ActivateTabAt(0, true);
1479 
1480   ASSERT_TRUE(observer.Run()) << handler.error_message();
1481   EXPECT_STREQ("PASS", handler.message().c_str());
1482 }
1483 
1484 // Tests that if a plugin accepts touch events, the browser knows to send touch
1485 // events to the renderer.
IN_PROC_BROWSER_TEST_F(PPAPITest,InputEvent_AcceptTouchEvent)1486 IN_PROC_BROWSER_TEST_F(PPAPITest, InputEvent_AcceptTouchEvent) {
1487   std::string positive_tests[] = { "InputEvent_AcceptTouchEvent_1",
1488                                    "InputEvent_AcceptTouchEvent_2",
1489                                    "InputEvent_AcceptTouchEvent_3",
1490                                    "InputEvent_AcceptTouchEvent_4"
1491                                  };
1492 
1493   for (size_t i = 0; i < arraysize(positive_tests); ++i) {
1494     RenderViewHost* host = browser()->tab_strip_model()->
1495         GetActiveWebContents()->GetRenderViewHost();
1496     RunTest(positive_tests[i]);
1497     EXPECT_TRUE(content::RenderViewHostTester::HasTouchEventHandler(host));
1498   }
1499 }
1500 
IN_PROC_BROWSER_TEST_F(PPAPITest,View)1501 IN_PROC_BROWSER_TEST_F(PPAPITest, View) {
1502   RunTest(LIST_TEST(View_SizeChange)
1503           LIST_TEST(View_ClipChange));
1504 }
IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,View)1505 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, View) {
1506   RunTest(LIST_TEST(View_SizeChange)
1507           LIST_TEST(View_ClipChange));
1508 }
IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest,View)1509 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, View) {
1510   RunTestViaHTTP(LIST_TEST(View_SizeChange)
1511                  LIST_TEST(View_ClipChange));
1512 }
IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest,MAYBE_GLIBC (View))1513 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(View)) {
1514   RunTestViaHTTP(LIST_TEST(View_SizeChange)
1515                  LIST_TEST(View_ClipChange));
1516 }
IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest,View)1517 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, View) {
1518   RunTestViaHTTP(LIST_TEST(View_SizeChange)
1519                  LIST_TEST(View_ClipChange));
1520 }
1521 
IN_PROC_BROWSER_TEST_F(PPAPITest,ResourceArray)1522 IN_PROC_BROWSER_TEST_F(PPAPITest, ResourceArray) {
1523   RunTest(LIST_TEST(ResourceArray_Basics)
1524           LIST_TEST(ResourceArray_OutOfRangeAccess)
1525           LIST_TEST(ResourceArray_EmptyArray)
1526           LIST_TEST(ResourceArray_InvalidElement));
1527 }
IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,ResourceArray)1528 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, ResourceArray) {
1529   RunTest(LIST_TEST(ResourceArray_Basics)
1530           LIST_TEST(ResourceArray_OutOfRangeAccess)
1531           LIST_TEST(ResourceArray_EmptyArray)
1532           LIST_TEST(ResourceArray_InvalidElement));
1533 }
1534 
IN_PROC_BROWSER_TEST_F(PPAPITest,FlashMessageLoop)1535 IN_PROC_BROWSER_TEST_F(PPAPITest, FlashMessageLoop) {
1536   RunTest(LIST_TEST(FlashMessageLoop_Basics)
1537           LIST_TEST(FlashMessageLoop_RunWithoutQuit));
1538 }
1539 #if defined(OS_LINUX)  // Disabled due to flakiness http://crbug.com/316925
1540 #define MAYBE_FlashMessageLoop DISABLED_FlashMessageLoop
1541 #else
1542 #define MAYBE_FlashMessageLoop FlashMessageLoop
1543 #endif
IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,MAYBE_FlashMessageLoop)1544 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, MAYBE_FlashMessageLoop) {
1545   RunTest(LIST_TEST(FlashMessageLoop_Basics)
1546           LIST_TEST(FlashMessageLoop_RunWithoutQuit));
1547 }
1548 
1549 TEST_PPAPI_IN_PROCESS(MouseCursor)
TEST_PPAPI_OUT_OF_PROCESS(MouseCursor)1550 TEST_PPAPI_OUT_OF_PROCESS(MouseCursor)
1551 TEST_PPAPI_NACL(MouseCursor)
1552 
1553 // PPB_NetworkProxy is not supported in-process.
1554 TEST_PPAPI_OUT_OF_PROCESS(NetworkProxy)
1555 TEST_PPAPI_NACL(NetworkProxy)
1556 
1557 TEST_PPAPI_OUT_OF_PROCESS(TrueTypeFont)
1558 TEST_PPAPI_NACL(TrueTypeFont)
1559 
1560 TEST_PPAPI_OUT_OF_PROCESS(VideoDestination)
1561 TEST_PPAPI_NACL(VideoDestination)
1562 
1563 TEST_PPAPI_OUT_OF_PROCESS(VideoSource)
1564 TEST_PPAPI_NACL(VideoSource)
1565 
1566 // PPB_Printing only implemented for out of process.
1567 TEST_PPAPI_OUT_OF_PROCESS(Printing)
1568 
1569 // PPB_MessageLoop is only supported out-of-process.
1570 // TODO(dmichael): Enable for NaCl with the IPC proxy. crbug.com/116317
1571 TEST_PPAPI_OUT_OF_PROCESS(MessageLoop_Basics)
1572 // MessageLoop_Post starts a thread so only run it if pepper threads are
1573 // enabled.
1574 #ifdef ENABLE_PEPPER_THREADING
1575 TEST_PPAPI_OUT_OF_PROCESS(MessageLoop_Post)
1576 #endif
1577 
1578 // Going forward, Flash APIs will only work out-of-process.
1579 TEST_PPAPI_OUT_OF_PROCESS(Flash_GetLocalTimeZoneOffset)
1580 TEST_PPAPI_OUT_OF_PROCESS(Flash_GetProxyForURL)
1581 TEST_PPAPI_OUT_OF_PROCESS(Flash_GetSetting)
1582 TEST_PPAPI_OUT_OF_PROCESS(Flash_SetCrashData)
1583 // http://crbug.com/176822
1584 #if !defined(OS_WIN)
1585 TEST_PPAPI_OUT_OF_PROCESS(FlashClipboard)
1586 #endif
1587 TEST_PPAPI_OUT_OF_PROCESS(FlashFile)
1588 // Mac/Aura reach NOTIMPLEMENTED/time out.
1589 // mac: http://crbug.com/96767
1590 // aura: http://crbug.com/104384
1591 #if defined(OS_MACOSX)
1592 #define MAYBE_FlashFullscreen DISABLED_FlashFullscreen
1593 #else
1594 #define MAYBE_FlashFullscreen FlashFullscreen
1595 #endif
1596 TEST_PPAPI_OUT_OF_PROCESS(MAYBE_FlashFullscreen)
1597 
1598 TEST_PPAPI_OUT_OF_PROCESS(PDF)
1599 
1600 // TODO(dalecurtis): Renable once the platform verification infobar has been
1601 // implemented; see http://crbug.com/270908
1602 // #if defined(OS_CHROMEOS)
1603 // TEST_PPAPI_OUT_OF_PROCESS(PlatformVerificationPrivate)
1604 // #endif
1605 
1606 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, FlashDRM) {
1607   RunTest(
1608 #if (defined(OS_WIN) && defined(ENABLE_RLZ)) || defined(OS_CHROMEOS)
1609           // Only implemented on Windows and ChromeOS currently.
1610           LIST_TEST(FlashDRM_GetDeviceID)
1611 #endif
1612           LIST_TEST(FlashDRM_GetHmonitor)
1613           LIST_TEST(FlashDRM_GetVoucherFile));
1614 }
1615 
1616 TEST_PPAPI_IN_PROCESS(TalkPrivate)
1617 TEST_PPAPI_OUT_OF_PROCESS(TalkPrivate)
1618 
1619 #if defined(OS_CHROMEOS)
1620 TEST_PPAPI_OUT_OF_PROCESS(OutputProtectionPrivate)
1621 #endif
1622