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.
5 #include "chrome/test/ppapi/ppapi_test.h"
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"
20 using content::RenderViewHost
;
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) ","
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)); \
35 #define TEST_PPAPI_OUT_OF_PROCESS(test_name) \
36 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, test_name) { \
37 RunTest(STRIP_PREFIXES(test_name)); \
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)); \
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)); \
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)); \
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)); \
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)
65 #elif defined(ARCH_CPU_ARM_FAMILY)
66 // NaCl glibc tests are not included in ARM as there is no glibc support
68 #define TEST_PPAPI_NACL(test_name) \
69 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, test_name) { \
70 RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
72 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, test_name) { \
73 RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
76 #define TEST_PPAPI_NACL_DISALLOWED_SOCKETS(test_name) \
77 IN_PROC_BROWSER_TEST_F(PPAPINaClTestDisallowedSockets, test_name) { \
78 RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
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)); \
85 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, test_name) { \
86 RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
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)); \
96 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, test_name) { \
97 RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
99 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, test_name) { \
100 RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
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)); \
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)); \
114 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, test_name) { \
115 RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
117 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, test_name) { \
118 RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
124 // NaCl glibc tests are not included in ARM as there is no glibc support
126 #if defined(ARCH_CPU_ARM_FAMILY)
127 #define MAYBE_GLIBC(test_name) DISABLED_##test_name
129 #define MAYBE_GLIBC(test_name) test_name
137 TEST_PPAPI_IN_PROCESS(Broker
)
138 // Flaky, http://crbug.com/111355
139 TEST_PPAPI_OUT_OF_PROCESS(DISABLED_Broker
)
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);
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");
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()));
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);
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");
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()));
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
);
186 // We shouldn't see an infobar.
187 InfoBarObserver
observer(this);
189 RunTest("Broker_ConnectPermissionDenied");
190 RunTest("Broker_IsAllowedPermissionDenied");
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
);
198 // We shouldn't see an infobar.
199 InfoBarObserver
observer(this);
201 RunTest("Broker_ConnectPermissionGranted");
202 RunTest("Broker_IsAllowedPermissionGranted");
205 TEST_PPAPI_IN_PROCESS(Console
)
206 TEST_PPAPI_OUT_OF_PROCESS(Console
)
207 TEST_PPAPI_NACL(Console
)
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
213 #define MAYBE_Core Core
215 TEST_PPAPI_IN_PROCESS(MAYBE_Core
)
216 TEST_PPAPI_OUT_OF_PROCESS(MAYBE_Core
)
217 TEST_PPAPI_NACL(MAYBE_Core
)
219 TEST_PPAPI_IN_PROCESS(TraceEvent
)
220 TEST_PPAPI_OUT_OF_PROCESS(TraceEvent
)
221 TEST_PPAPI_NACL(TraceEvent
)
223 TEST_PPAPI_IN_PROCESS(InputEvent
)
224 TEST_PPAPI_OUT_OF_PROCESS(InputEvent
)
225 TEST_PPAPI_NACL(InputEvent
)
227 // Flaky on Linux and Windows. http://crbug.com/135403
228 #if defined(OS_LINUX) || defined(OS_WIN)
229 #define MAYBE_ImeInputEvent DISABLED_ImeInputEvent
231 #define MAYBE_ImeInputEvent ImeInputEvent
234 TEST_PPAPI_IN_PROCESS(MAYBE_ImeInputEvent
)
235 TEST_PPAPI_OUT_OF_PROCESS(MAYBE_ImeInputEvent
)
236 TEST_PPAPI_NACL(MAYBE_ImeInputEvent
)
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
)
246 // We run and reload the RecursiveObjects test to ensure that the InstanceObject
247 // (and others) are properly cleaned up after the first run.
248 IN_PROC_BROWSER_TEST_F(PPAPITest
, Instance_RecursiveObjects
) {
249 RunTestAndReload("Instance_RecursiveObjects");
251 // TODO(dmichael): Make it work out-of-process (or at least see whether we
253 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
,
254 DISABLED_Instance_RecursiveObjects
) {
255 RunTestAndReload("Instance_RecursiveObjects");
257 TEST_PPAPI_IN_PROCESS(Instance_LeakedObjectDestructors
);
258 TEST_PPAPI_OUT_OF_PROCESS(Instance_LeakedObjectDestructors
);
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");
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");
279 TEST_PPAPI_IN_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
)
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
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
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
321 TEST_PPAPI_IN_PROCESS(MAYBE_IN_Graphics3D
)
322 TEST_PPAPI_OUT_OF_PROCESS(MAYBE_OUT_Graphics3D
)
323 TEST_PPAPI_NACL(MAYBE_NACL_Graphics3D
)
325 TEST_PPAPI_IN_PROCESS(ImageData
)
326 TEST_PPAPI_OUT_OF_PROCESS(ImageData
)
327 TEST_PPAPI_NACL(ImageData
)
329 TEST_PPAPI_IN_PROCESS(BrowserFont
)
332 #define MAYBE_OUT_BrowserFont DISABLED_BrowserFont
334 #define MAYBE_OUT_BrowserFont BrowserFont
336 TEST_PPAPI_OUT_OF_PROCESS(MAYBE_OUT_BrowserFont
)
338 TEST_PPAPI_IN_PROCESS(Buffer
)
339 TEST_PPAPI_OUT_OF_PROCESS(Buffer
)
342 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, TCPSocket
) {
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
)
352 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest
, TCPSocket
) {
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
)
362 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest
, MAYBE_GLIBC(TCPSocket
)) {
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
)
372 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest
, TCPSocket
) {
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
)
383 TEST_PPAPI_OUT_OF_PROCESS_WITH_SSL_SERVER(TCPSocketPrivate
)
384 TEST_PPAPI_NACL_WITH_SSL_SERVER(TCPSocketPrivate
)
386 TEST_PPAPI_OUT_OF_PROCESS_WITH_SSL_SERVER(TCPSocketPrivateTrusted
)
389 // UDPSocket_Broadcast is disabled for OSX because it requires root permissions
391 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, UDPSocket
) {
393 LIST_TEST(UDPSocket_ReadWrite
)
394 LIST_TEST(UDPSocket_SetOption
)
395 #if !defined(OS_MACOSX)
396 LIST_TEST(UDPSocket_Broadcast
)
400 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest
, UDPSocket
) {
402 LIST_TEST(UDPSocket_ReadWrite
)
403 LIST_TEST(UDPSocket_SetOption
)
404 #if !defined(OS_MACOSX)
405 LIST_TEST(UDPSocket_Broadcast
)
409 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest
, MAYBE_GLIBC(UDPSocket
)) {
411 LIST_TEST(UDPSocket_ReadWrite
)
412 LIST_TEST(UDPSocket_SetOption
)
413 #if !defined(OS_MACOSX)
414 LIST_TEST(UDPSocket_Broadcast
)
418 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest
, UDPSocket
) {
420 LIST_TEST(UDPSocket_ReadWrite
)
421 LIST_TEST(UDPSocket_SetOption
)
422 #if !defined(OS_MACOSX)
423 LIST_TEST(UDPSocket_Broadcast
)
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
)
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
)
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
)
449 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(TCPServerSocketPrivate
)
450 TEST_PPAPI_NACL(TCPServerSocketPrivate
)
452 // HostResolver tests.
453 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, HostResolver
) {
455 LIST_TEST(HostResolver_Empty
)
456 LIST_TEST(HostResolver_Resolve
)
457 LIST_TEST(HostResolver_ResolveIPv4
)
460 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest
, HostResolver
) {
462 LIST_TEST(HostResolver_Empty
)
463 LIST_TEST(HostResolver_Resolve
)
464 LIST_TEST(HostResolver_ResolveIPv4
)
467 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest
, MAYBE_GLIBC(HostResolver
)) {
469 LIST_TEST(HostResolver_Empty
)
470 LIST_TEST(HostResolver_Resolve
)
471 LIST_TEST(HostResolver_ResolveIPv4
)
474 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest
, HostResolver
) {
476 LIST_TEST(HostResolver_Empty
)
477 LIST_TEST(HostResolver_Resolve
)
478 LIST_TEST(HostResolver_ResolveIPv4
)
482 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(HostResolverPrivate_Resolve
)
483 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(HostResolverPrivate_ResolveIPv4
)
484 TEST_PPAPI_NACL(HostResolverPrivate_Resolve
)
485 TEST_PPAPI_NACL(HostResolverPrivate_ResolveIPv4
)
487 // URLLoader tests. These are split into multiple test fixtures because if we
488 // run them all together, they tend to time out.
489 IN_PROC_BROWSER_TEST_F(PPAPITest
, URLLoader0
) {
491 LIST_TEST(URLLoader_BasicGET
)
492 LIST_TEST(URLLoader_BasicPOST
)
493 LIST_TEST(URLLoader_BasicFilePOST
)
494 LIST_TEST(URLLoader_BasicFileRangePOST
)
495 LIST_TEST(URLLoader_CompoundBodyPOST
)
499 IN_PROC_BROWSER_TEST_F(PPAPITest
, URLLoader1
) {
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
)
508 IN_PROC_BROWSER_TEST_F(PPAPITest
, URLLoader2
) {
510 LIST_TEST(URLLoader_UntrustedSameOriginRestriction
)
511 LIST_TEST(URLLoader_TrustedSameOriginRestriction
)
512 LIST_TEST(URLLoader_UntrustedCrossOriginRequest
)
513 LIST_TEST(URLLoader_TrustedCrossOriginRequest
)
514 LIST_TEST(URLLoader_UntrustedJavascriptURLRestriction
)
515 // TODO(bbudge) Fix Javascript URLs for trusted loaders.
516 // http://crbug.com/103062
517 LIST_TEST(DISABLED_URLLoader_TrustedJavascriptURLRestriction
)
520 IN_PROC_BROWSER_TEST_F(PPAPITest
, URLLoader3
) {
522 LIST_TEST(URLLoader_UntrustedHttpRequests
)
523 LIST_TEST(URLLoader_TrustedHttpRequests
)
524 LIST_TEST(URLLoader_FollowURLRedirect
)
525 LIST_TEST(URLLoader_AuditURLRedirect
)
526 LIST_TEST(URLLoader_AbortCalls
)
527 LIST_TEST(URLLoader_UntendedLoad
)
528 LIST_TEST(URLLoader_PrefetchBufferThreshold
)
531 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, URLLoader0
) {
533 LIST_TEST(URLLoader_BasicGET
)
534 LIST_TEST(URLLoader_BasicPOST
)
535 LIST_TEST(URLLoader_BasicFilePOST
)
536 LIST_TEST(URLLoader_BasicFileRangePOST
)
537 LIST_TEST(URLLoader_CompoundBodyPOST
)
540 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, URLLoader1
) {
542 LIST_TEST(URLLoader_EmptyDataPOST
)
543 LIST_TEST(URLLoader_BinaryDataPOST
)
544 LIST_TEST(URLLoader_CustomRequestHeader
)
545 LIST_TEST(URLLoader_FailsBogusContentLength
)
546 LIST_TEST(URLLoader_StreamToFile
)
549 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, URLLoader2
) {
551 LIST_TEST(URLLoader_UntrustedSameOriginRestriction
)
552 LIST_TEST(URLLoader_TrustedSameOriginRestriction
)
553 LIST_TEST(URLLoader_UntrustedCrossOriginRequest
)
554 LIST_TEST(URLLoader_TrustedCrossOriginRequest
)
555 LIST_TEST(URLLoader_UntrustedJavascriptURLRestriction
)
556 // TODO(bbudge) Fix Javascript URLs for trusted loaders.
557 // http://crbug.com/103062
558 LIST_TEST(DISABLED_URLLoader_TrustedJavascriptURLRestriction
)
561 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, URLLoader3
) {
563 LIST_TEST(URLLoader_UntrustedHttpRequests
)
564 LIST_TEST(URLLoader_TrustedHttpRequests
)
565 LIST_TEST(URLLoader_FollowURLRedirect
)
566 LIST_TEST(URLLoader_AuditURLRedirect
)
567 LIST_TEST(URLLoader_AbortCalls
)
568 LIST_TEST(URLLoader_UntendedLoad
)
569 LIST_TEST(URLLoader_PrefetchBufferThreshold
)
572 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest
, URLLoader0
) {
574 LIST_TEST(URLLoader_BasicGET
)
575 LIST_TEST(URLLoader_BasicPOST
)
576 LIST_TEST(URLLoader_BasicFilePOST
)
577 LIST_TEST(URLLoader_BasicFileRangePOST
)
578 LIST_TEST(URLLoader_CompoundBodyPOST
)
581 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest
, URLLoader1
) {
583 LIST_TEST(URLLoader_EmptyDataPOST
)
584 LIST_TEST(URLLoader_BinaryDataPOST
)
585 LIST_TEST(URLLoader_CustomRequestHeader
)
586 LIST_TEST(URLLoader_FailsBogusContentLength
)
587 LIST_TEST(URLLoader_StreamToFile
)
590 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest
, URLLoader2
) {
592 LIST_TEST(URLLoader_UntrustedSameOriginRestriction
)
593 // We don't support Trusted APIs in NaCl.
594 LIST_TEST(DISABLED_URLLoader_TrustedSameOriginRestriction
)
595 LIST_TEST(URLLoader_UntrustedCrossOriginRequest
)
596 LIST_TEST(DISABLED_URLLoader_TrustedCrossOriginRequest
)
597 LIST_TEST(URLLoader_UntrustedJavascriptURLRestriction
)
598 // TODO(bbudge) Fix Javascript URLs for trusted loaders.
599 // http://crbug.com/103062
600 LIST_TEST(DISABLED_URLLoader_TrustedJavascriptURLRestriction
)
603 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest
, URLLoader3
) {
605 LIST_TEST(URLLoader_UntrustedHttpRequests
)
606 LIST_TEST(DISABLED_URLLoader_TrustedHttpRequests
)
607 LIST_TEST(URLLoader_FollowURLRedirect
)
608 LIST_TEST(URLLoader_AuditURLRedirect
)
609 LIST_TEST(URLLoader_AbortCalls
)
610 LIST_TEST(URLLoader_UntendedLoad
)
611 LIST_TEST(URLLoader_PrefetchBufferThreshold
)
615 // Flaky on 32-bit linux bot; http://crbug.com/308906
616 #if defined(OS_LINUX) && defined(ARCH_CPU_X86)
617 #define MAYBE_URLLoader_BasicFilePOST DISABLED_URLLoader_BasicFilePOST
619 #define MAYBE_URLLoader_BasicFilePOST URLLoader_BasicFilePOST
621 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest
, URLLoader0
) {
623 LIST_TEST(URLLoader_BasicGET
)
624 LIST_TEST(URLLoader_BasicPOST
)
625 LIST_TEST(MAYBE_URLLoader_BasicFilePOST
)
626 LIST_TEST(URLLoader_BasicFileRangePOST
)
627 LIST_TEST(URLLoader_CompoundBodyPOST
)
630 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest
, URLLoader1
) {
632 LIST_TEST(URLLoader_EmptyDataPOST
)
633 LIST_TEST(URLLoader_BinaryDataPOST
)
634 LIST_TEST(URLLoader_CustomRequestHeader
)
635 LIST_TEST(URLLoader_FailsBogusContentLength
)
636 LIST_TEST(URLLoader_StreamToFile
)
639 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest
, URLLoader2
) {
641 LIST_TEST(URLLoader_UntrustedSameOriginRestriction
)
642 // We don't support Trusted APIs in NaCl.
643 LIST_TEST(DISABLED_URLLoader_TrustedSameOriginRestriction
)
644 LIST_TEST(URLLoader_UntrustedCrossOriginRequest
)
645 LIST_TEST(DISABLED_URLLoader_TrustedCrossOriginRequest
)
646 LIST_TEST(URLLoader_UntrustedJavascriptURLRestriction
)
647 // TODO(bbudge) Fix Javascript URLs for trusted loaders.
648 // http://crbug.com/103062
649 LIST_TEST(DISABLED_URLLoader_TrustedJavascriptURLRestriction
)
652 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest
, URLLoader3
) {
654 LIST_TEST(URLLoader_UntrustedHttpRequests
)
655 LIST_TEST(DISABLED_URLLoader_TrustedHttpRequests
)
656 LIST_TEST(URLLoader_FollowURLRedirect
)
657 LIST_TEST(URLLoader_AuditURLRedirect
)
658 LIST_TEST(URLLoader_AbortCalls
)
659 LIST_TEST(URLLoader_UntendedLoad
)
660 LIST_TEST(URLLoader_PrefetchBufferThreshold
)
663 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest
, URLLoader0
) {
665 LIST_TEST(URLLoader_BasicGET
)
666 LIST_TEST(URLLoader_BasicPOST
)
667 LIST_TEST(URLLoader_BasicFilePOST
)
668 LIST_TEST(URLLoader_BasicFileRangePOST
)
669 LIST_TEST(URLLoader_CompoundBodyPOST
)
672 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest
, URLLoader1
) {
674 LIST_TEST(URLLoader_EmptyDataPOST
)
675 LIST_TEST(URLLoader_BinaryDataPOST
)
676 LIST_TEST(URLLoader_CustomRequestHeader
)
677 LIST_TEST(URLLoader_FailsBogusContentLength
)
678 LIST_TEST(URLLoader_StreamToFile
)
681 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest
, URLLoader2
) {
683 LIST_TEST(URLLoader_UntrustedSameOriginRestriction
)
684 // We don't support Trusted APIs in NaCl.
685 LIST_TEST(DISABLED_URLLoader_TrustedSameOriginRestriction
)
686 LIST_TEST(URLLoader_UntrustedCrossOriginRequest
)
687 LIST_TEST(DISABLED_URLLoader_TrustedCrossOriginRequest
)
688 LIST_TEST(URLLoader_UntrustedJavascriptURLRestriction
)
689 // TODO(bbudge) Fix Javascript URLs for trusted loaders.
690 // http://crbug.com/103062
691 LIST_TEST(DISABLED_URLLoader_TrustedJavascriptURLRestriction
)
694 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest
, URLLoader3
) {
696 LIST_TEST(URLLoader_UntrustedHttpRequests
)
697 LIST_TEST(DISABLED_URLLoader_TrustedHttpRequests
)
698 LIST_TEST(URLLoader_FollowURLRedirect
)
699 LIST_TEST(URLLoader_AuditURLRedirect
)
700 LIST_TEST(URLLoader_AbortCalls
)
701 LIST_TEST(URLLoader_UntendedLoad
)
702 LIST_TEST(URLLoader_PrefetchBufferThreshold
)
706 // URLRequestInfo tests.
707 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_CreateAndIsURLRequestInfo
)
708 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_CreateAndIsURLRequestInfo
)
710 // Timing out on Windows. http://crbug.com/129571
712 #define MAYBE_URLRequest_CreateAndIsURLRequestInfo \
713 DISABLED_URLRequest_CreateAndIsURLRequestInfo
715 #define MAYBE_URLRequest_CreateAndIsURLRequestInfo \
716 URLRequest_CreateAndIsURLRequestInfo
718 TEST_PPAPI_NACL(MAYBE_URLRequest_CreateAndIsURLRequestInfo
)
720 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_SetProperty
)
721 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_SetProperty
)
722 // http://crbug.com/167150
723 TEST_PPAPI_NACL(DISABLED_URLRequest_SetProperty
)
724 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_AppendDataToBody
)
725 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_AppendDataToBody
)
726 TEST_PPAPI_NACL(URLRequest_AppendDataToBody
)
727 TEST_PPAPI_IN_PROCESS_VIA_HTTP(DISABLED_URLRequest_AppendFileToBody
)
728 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(DISABLED_URLRequest_AppendFileToBody
)
729 TEST_PPAPI_NACL(DISABLED_URLRequest_AppendFileToBody
)
730 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_Stress
)
731 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_Stress
)
732 TEST_PPAPI_NACL(URLRequest_Stress
)
734 TEST_PPAPI_IN_PROCESS(PaintAggregator
)
735 TEST_PPAPI_OUT_OF_PROCESS(PaintAggregator
)
736 TEST_PPAPI_NACL(PaintAggregator
)
738 // TODO(danakj): http://crbug.com/115286
739 TEST_PPAPI_IN_PROCESS(DISABLED_Scrollbar
)
740 // http://crbug.com/89961
741 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, DISABLED_Scrollbar
) {
742 RunTest("Scrollbar");
744 // TODO(danakj): http://crbug.com/115286
745 TEST_PPAPI_NACL(DISABLED_Scrollbar
)
747 TEST_PPAPI_IN_PROCESS(URLUtil
)
748 TEST_PPAPI_OUT_OF_PROCESS(URLUtil
)
750 TEST_PPAPI_IN_PROCESS(CharSet
)
751 TEST_PPAPI_OUT_OF_PROCESS(CharSet
)
753 TEST_PPAPI_IN_PROCESS(Crypto
)
754 TEST_PPAPI_OUT_OF_PROCESS(Crypto
)
756 TEST_PPAPI_IN_PROCESS(Var
)
757 TEST_PPAPI_OUT_OF_PROCESS(Var
)
760 TEST_PPAPI_IN_PROCESS(VarResource
)
761 TEST_PPAPI_OUT_OF_PROCESS(VarResource
)
762 TEST_PPAPI_NACL(VarResource
)
764 // Flaky on mac, http://crbug.com/121107
765 #if defined(OS_MACOSX)
766 #define MAYBE_VarDeprecated DISABLED_VarDeprecated
768 #define MAYBE_VarDeprecated VarDeprecated
771 TEST_PPAPI_IN_PROCESS(VarDeprecated
)
772 TEST_PPAPI_OUT_OF_PROCESS(MAYBE_VarDeprecated
)
774 // Windows defines 'PostMessage', so we have to undef it.
778 // PostMessage tests.
779 IN_PROC_BROWSER_TEST_F(PPAPITest
, PostMessage
) {
781 LIST_TEST(PostMessage_SendInInit
)
782 LIST_TEST(PostMessage_SendingData
)
783 LIST_TEST(PostMessage_SendingArrayBuffer
)
784 LIST_TEST(DISABLED_PostMessage_SendingArray
)
785 LIST_TEST(DISABLED_PostMessage_SendingDictionary
)
786 LIST_TEST(DISABLED_PostMessage_SendingResource
)
787 LIST_TEST(DISABLED_PostMessage_SendingComplexVar
)
788 LIST_TEST(PostMessage_MessageEvent
)
789 LIST_TEST(PostMessage_NoHandler
)
790 LIST_TEST(PostMessage_ExtraParam
)
794 // Flaky: crbug.com/269530
796 #define MAYBE_PostMessage DISABLED_PostMessage
798 #define MAYBE_PostMessage PostMessage
800 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, MAYBE_PostMessage
) {
802 LIST_TEST(PostMessage_SendInInit
)
803 LIST_TEST(PostMessage_SendingData
)
804 LIST_TEST(PostMessage_SendingArrayBuffer
)
805 LIST_TEST(PostMessage_SendingArray
)
806 LIST_TEST(PostMessage_SendingDictionary
)
807 LIST_TEST(PostMessage_SendingResource
)
808 LIST_TEST(PostMessage_SendingComplexVar
)
809 LIST_TEST(PostMessage_MessageEvent
)
810 LIST_TEST(PostMessage_NoHandler
)
811 LIST_TEST(PostMessage_ExtraParam
)
812 LIST_TEST(PostMessage_NonMainThread
)
815 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest
, PostMessage
) {
817 LIST_TEST(PostMessage_SendInInit
)
818 LIST_TEST(PostMessage_SendingData
)
819 LIST_TEST(PostMessage_SendingArrayBuffer
)
820 LIST_TEST(PostMessage_SendingArray
)
821 LIST_TEST(PostMessage_SendingDictionary
)
822 LIST_TEST(PostMessage_SendingResource
)
823 LIST_TEST(PostMessage_SendingComplexVar
)
824 LIST_TEST(PostMessage_MessageEvent
)
825 LIST_TEST(PostMessage_NoHandler
)
826 LIST_TEST(PostMessage_ExtraParam
)
827 LIST_TEST(PostMessage_NonMainThread
)
830 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest
, MAYBE_GLIBC(PostMessage
)) {
832 LIST_TEST(PostMessage_SendInInit
)
833 LIST_TEST(PostMessage_SendingData
)
834 LIST_TEST(PostMessage_SendingArrayBuffer
)
835 LIST_TEST(PostMessage_SendingArray
)
836 LIST_TEST(PostMessage_SendingDictionary
)
837 LIST_TEST(PostMessage_SendingResource
)
838 LIST_TEST(PostMessage_SendingComplexVar
)
839 LIST_TEST(PostMessage_MessageEvent
)
840 LIST_TEST(PostMessage_NoHandler
)
841 LIST_TEST(PostMessage_ExtraParam
)
842 LIST_TEST(PostMessage_NonMainThread
)
845 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest
, PostMessage
) {
847 LIST_TEST(PostMessage_SendInInit
)
848 LIST_TEST(PostMessage_SendingData
)
849 LIST_TEST(PostMessage_SendingArrayBuffer
)
850 LIST_TEST(PostMessage_SendingArray
)
851 LIST_TEST(PostMessage_SendingDictionary
)
852 LIST_TEST(PostMessage_SendingResource
)
853 LIST_TEST(PostMessage_SendingComplexVar
)
854 LIST_TEST(PostMessage_MessageEvent
)
855 LIST_TEST(PostMessage_NoHandler
)
856 LIST_TEST(PostMessage_ExtraParam
)
857 LIST_TEST(PostMessage_NonMainThread
)
861 TEST_PPAPI_IN_PROCESS(Memory
)
862 TEST_PPAPI_OUT_OF_PROCESS(Memory
)
863 TEST_PPAPI_NACL(Memory
)
865 TEST_PPAPI_IN_PROCESS(VideoDecoder
)
866 TEST_PPAPI_OUT_OF_PROCESS(VideoDecoder
)
868 #if defined(OS_LINUX) && !defined(OS_CHROMEOS) && defined(USE_AURA)
869 // TODO(erg): linux_aura bringup: http://crbug.com/318961
870 #define MAYBE_FileIO DISABLED_FileIO
871 #define MAYBE_FileIO_Private DISABLED_FileIO_Private
873 #define MAYBE_FileIO FileIO
874 #define MAYBE_FileIO_Private FileIO_Private
878 IN_PROC_BROWSER_TEST_F(PPAPITest
, MAYBE_FileIO
) {
880 LIST_TEST(FileIO_Open
)
881 LIST_TEST(FileIO_OpenDirectory
)
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
)
891 IN_PROC_BROWSER_TEST_F(PPAPIPrivateTest
, MAYBE_FileIO_Private
) {
893 LIST_TEST(FileIO_RequestOSFileHandle
)
894 LIST_TEST(FileIO_RequestOSFileHandleWithOpenExclusive
)
895 LIST_TEST(FileIO_Mmap
)
898 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, MAYBE_FileIO
) {
900 LIST_TEST(FileIO_Open
)
901 LIST_TEST(FileIO_AbortCalls
)
902 LIST_TEST(FileIO_ParallelReads
)
903 LIST_TEST(FileIO_ParallelWrites
)
904 LIST_TEST(FileIO_NotAllowMixedReadWrite
)
905 LIST_TEST(FileIO_ReadWriteSetLength
)
906 LIST_TEST(FileIO_ReadToArrayWriteSetLength
)
907 LIST_TEST(FileIO_TouchQuery
)
910 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPIPrivateTest
, MAYBE_FileIO_Private
) {
912 LIST_TEST(FileIO_RequestOSFileHandle
)
913 LIST_TEST(FileIO_RequestOSFileHandleWithOpenExclusive
)
914 LIST_TEST(FileIO_Mmap
)
917 // Flaky on XP; times out, http://crbug.com/313401
919 #define MAYBE_Nacl_Newlib_FileIO DISABLED_FileIO
920 #define MAYBE_Nacl_Newlib_FileIO_Private DISABLED_FileIO_Private
922 #define MAYBE_Nacl_Newlib_FileIO FileIO
923 #define MAYBE_Nacl_Newlib_FileIO_Private FileIO_Private
925 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest
, MAYBE_Nacl_Newlib_FileIO
) {
927 LIST_TEST(FileIO_Open
)
928 LIST_TEST(FileIO_AbortCalls
)
929 LIST_TEST(FileIO_ParallelReads
)
930 LIST_TEST(FileIO_ParallelWrites
)
931 LIST_TEST(FileIO_NotAllowMixedReadWrite
)
932 LIST_TEST(FileIO_ReadWriteSetLength
)
933 LIST_TEST(FileIO_ReadToArrayWriteSetLength
)
934 LIST_TEST(FileIO_TouchQuery
)
937 IN_PROC_BROWSER_TEST_F(PPAPIPrivateNaClNewlibTest
,
938 MAYBE_Nacl_Newlib_FileIO_Private
) {
940 LIST_TEST(FileIO_RequestOSFileHandle
)
941 LIST_TEST(FileIO_RequestOSFileHandleWithOpenExclusive
)
942 LIST_TEST(FileIO_Mmap
)
945 // Flaky on 32-bit linux bot; http://crbug.com/308905
946 // Flaky on Windows too; http://crbug.com/321300
947 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest
, DISABLED_NaCl_Glibc_FileIO
) {
949 LIST_TEST(FileIO_Open
)
950 LIST_TEST(FileIO_AbortCalls
)
951 LIST_TEST(FileIO_ParallelReads
)
952 LIST_TEST(FileIO_ParallelWrites
)
953 LIST_TEST(FileIO_NotAllowMixedReadWrite
)
954 LIST_TEST(FileIO_ReadWriteSetLength
)
955 LIST_TEST(FileIO_ReadToArrayWriteSetLength
)
956 LIST_TEST(FileIO_TouchQuery
)
959 IN_PROC_BROWSER_TEST_F(PPAPIPrivateNaClGLibcTest
,
960 DISABLED_NaCl_Glibc_FileIO_Private
) {
962 LIST_TEST(FileIO_RequestOSFileHandle
)
963 LIST_TEST(FileIO_RequestOSFileHandleWithOpenExclusive
)
964 LIST_TEST(FileIO_Mmap
)
967 // Flaky on XP; times out, http://crbug.com/313205
969 #define MAYBE_PNaCl_FileIO DISABLED_FileIO
970 #define MAYBE_PNaCl_FileIO_Private DISABLED_FileIO_Private
972 #define MAYBE_PNaCl_FileIO FileIO
973 #define MAYBE_PNaCl_FileIO_Private FileIO_Private
975 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest
, MAYBE_PNaCl_FileIO
) {
977 LIST_TEST(FileIO_Open
)
978 LIST_TEST(FileIO_AbortCalls
)
979 LIST_TEST(FileIO_ParallelReads
)
980 LIST_TEST(FileIO_ParallelWrites
)
981 LIST_TEST(FileIO_NotAllowMixedReadWrite
)
982 LIST_TEST(FileIO_ReadWriteSetLength
)
983 LIST_TEST(FileIO_ReadToArrayWriteSetLength
)
984 LIST_TEST(FileIO_TouchQuery
)
987 IN_PROC_BROWSER_TEST_F(PPAPIPrivateNaClPNaClTest
, MAYBE_PNaCl_FileIO_Private
) {
989 LIST_TEST(FileIO_RequestOSFileHandle
)
990 LIST_TEST(FileIO_RequestOSFileHandleWithOpenExclusive
)
991 LIST_TEST(FileIO_Mmap
)
995 // PPB_FileMapping is only implemented on POSIX currently.
996 // http://crbug.com/83774
998 #define MAYBE_FileMapping DISABLED_FileMapping
1000 #define MAYBE_FileMapping FileMapping
1002 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(MAYBE_FileMapping
)
1003 TEST_PPAPI_NACL(MAYBE_FileMapping
)
1005 // Note, the FileRef tests are split into two, because all of them together
1006 // sometimes take too long on windows: crbug.com/336999
1007 IN_PROC_BROWSER_TEST_F(PPAPITest
, FileRef1
) {
1009 LIST_TEST(FileRef_Create
)
1010 LIST_TEST(FileRef_GetFileSystemType
)
1011 LIST_TEST(FileRef_GetName
)
1012 LIST_TEST(FileRef_GetPath
)
1013 LIST_TEST(FileRef_GetParent
)
1014 LIST_TEST(FileRef_MakeDirectory
)
1017 IN_PROC_BROWSER_TEST_F(PPAPITest
, FileRef2
) {
1019 LIST_TEST(FileRef_QueryAndTouchFile
)
1020 LIST_TEST(FileRef_DeleteFileAndDirectory
)
1021 LIST_TEST(FileRef_RenameFileAndDirectory
)
1022 LIST_TEST(FileRef_Query
)
1023 LIST_TEST(FileRef_FileNameEscaping
)
1024 LIST_TEST(FileRef_ReadDirectoryEntries
)
1027 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, FileRef1
) {
1029 LIST_TEST(FileRef_Create
)
1030 LIST_TEST(FileRef_GetFileSystemType
)
1031 LIST_TEST(FileRef_GetName
)
1032 LIST_TEST(FileRef_GetPath
)
1033 LIST_TEST(FileRef_GetParent
)
1034 LIST_TEST(FileRef_MakeDirectory
)
1037 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, FileRef2
) {
1039 LIST_TEST(FileRef_QueryAndTouchFile
)
1040 LIST_TEST(FileRef_DeleteFileAndDirectory
)
1041 LIST_TEST(FileRef_RenameFileAndDirectory
)
1042 LIST_TEST(FileRef_Query
)
1043 LIST_TEST(FileRef_FileNameEscaping
)
1044 LIST_TEST(DISABLED_FileRef_ReadDirectoryEntries
)
1047 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest
, FileRef1
) {
1049 LIST_TEST(FileRef_Create
)
1050 LIST_TEST(FileRef_GetFileSystemType
)
1051 LIST_TEST(FileRef_GetName
)
1052 LIST_TEST(FileRef_GetPath
)
1053 LIST_TEST(FileRef_GetParent
)
1054 LIST_TEST(FileRef_MakeDirectory
)
1057 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest
, FileRef2
) {
1059 LIST_TEST(FileRef_QueryAndTouchFile
)
1060 LIST_TEST(FileRef_DeleteFileAndDirectory
)
1061 LIST_TEST(FileRef_RenameFileAndDirectory
)
1062 LIST_TEST(FileRef_Query
)
1063 LIST_TEST(FileRef_FileNameEscaping
)
1064 LIST_TEST(DISABLED_FileRef_ReadDirectoryEntries
)
1067 // Flaky on 32-bit linux bot; http://crbug.com/308908
1068 #if defined(OS_LINUX) && defined(ARCH_CPU_X86)
1069 #define MAYBE_NaCl_Glibc_FileRef1 DISABLED_FileRef1
1070 #define MAYBE_NaCl_Glibc_FileRef2 DISABLED_FileRef2
1072 #define MAYBE_NaCl_Glibc_FileRef1 FileRef1
1073 #define MAYBE_NaCl_Glibc_FileRef2 FileRef2
1075 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest
, MAYBE_NaCl_Glibc_FileRef1
) {
1077 LIST_TEST(FileRef_Create
)
1078 LIST_TEST(FileRef_GetFileSystemType
)
1079 LIST_TEST(FileRef_GetName
)
1080 LIST_TEST(FileRef_GetPath
)
1081 LIST_TEST(FileRef_GetParent
)
1082 LIST_TEST(FileRef_MakeDirectory
)
1085 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest
, MAYBE_NaCl_Glibc_FileRef2
) {
1087 LIST_TEST(FileRef_QueryAndTouchFile
)
1088 LIST_TEST(FileRef_DeleteFileAndDirectory
)
1089 LIST_TEST(FileRef_RenameFileAndDirectory
)
1090 LIST_TEST(FileRef_Query
)
1091 LIST_TEST(FileRef_FileNameEscaping
)
1092 LIST_TEST(DISABLED_FileRef_ReadDirectoryEntries
)
1095 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest
, FileRef1
) {
1097 LIST_TEST(FileRef_Create
)
1098 LIST_TEST(FileRef_GetFileSystemType
)
1099 LIST_TEST(FileRef_GetName
)
1100 LIST_TEST(FileRef_GetPath
)
1101 LIST_TEST(FileRef_GetParent
)
1102 LIST_TEST(FileRef_MakeDirectory
)
1105 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest
, FileRef2
) {
1107 LIST_TEST(FileRef_QueryAndTouchFile
)
1108 LIST_TEST(FileRef_DeleteFileAndDirectory
)
1109 LIST_TEST(FileRef_RenameFileAndDirectory
)
1110 LIST_TEST(FileRef_Query
)
1111 LIST_TEST(FileRef_FileNameEscaping
)
1112 LIST_TEST(DISABLED_FileRef_ReadDirectoryEntries
)
1116 TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileSystem
)
1117 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileSystem
)
1119 // PPAPINaClTest.FileSystem times out consistently on Windows and Mac.
1120 // http://crbug.com/130372
1121 #if defined(OS_MACOSX) || defined(OS_WIN)
1122 #define MAYBE_FileSystem DISABLED_FileSystem
1124 #define MAYBE_FileSystem FileSystem
1127 TEST_PPAPI_NACL(MAYBE_FileSystem
)
1129 #if defined(OS_MACOSX)
1130 // http://crbug.com/103912
1131 #define MAYBE_Fullscreen DISABLED_Fullscreen
1132 #elif defined(OS_LINUX)
1133 // http://crbug.com/146008
1134 #define MAYBE_Fullscreen DISABLED_Fullscreen
1135 #elif defined(OS_WIN)
1136 // http://crbug.com/342269
1137 #define MAYBE_Fullscreen DISABLED_Fullscreen
1139 #define MAYBE_Fullscreen Fullscreen
1142 TEST_PPAPI_IN_PROCESS_VIA_HTTP(MAYBE_Fullscreen
)
1143 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(MAYBE_Fullscreen
)
1144 TEST_PPAPI_NACL(MAYBE_Fullscreen
)
1146 TEST_PPAPI_OUT_OF_PROCESS(X509CertificatePrivate
)
1148 TEST_PPAPI_IN_PROCESS(UMA
)
1149 TEST_PPAPI_OUT_OF_PROCESS(UMA
)
1150 TEST_PPAPI_NACL(UMA
)
1153 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, NetAddress
) {
1155 LIST_TEST(NetAddress_IPv4Address
)
1156 LIST_TEST(NetAddress_IPv6Address
)
1157 LIST_TEST(NetAddress_DescribeAsString
)
1160 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest
, NetAddress
) {
1162 LIST_TEST(NetAddress_IPv4Address
)
1163 LIST_TEST(NetAddress_IPv6Address
)
1164 LIST_TEST(NetAddress_DescribeAsString
)
1167 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest
, MAYBE_GLIBC(NetAddress
)) {
1169 LIST_TEST(NetAddress_IPv4Address
)
1170 LIST_TEST(NetAddress_IPv6Address
)
1171 LIST_TEST(NetAddress_DescribeAsString
)
1174 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest
, NetAddress
) {
1176 LIST_TEST(NetAddress_IPv4Address
)
1177 LIST_TEST(NetAddress_IPv6Address
)
1178 LIST_TEST(NetAddress_DescribeAsString
)
1182 IN_PROC_BROWSER_TEST_F(PPAPITest
, NetAddressPrivate
) {
1184 LIST_TEST(NetAddressPrivate_AreEqual
)
1185 LIST_TEST(NetAddressPrivate_AreHostsEqual
)
1186 LIST_TEST(NetAddressPrivate_Describe
)
1187 LIST_TEST(NetAddressPrivate_ReplacePort
)
1188 LIST_TEST(NetAddressPrivate_GetAnyAddress
)
1189 LIST_TEST(NetAddressPrivate_DescribeIPv6
)
1190 LIST_TEST(NetAddressPrivate_GetFamily
)
1191 LIST_TEST(NetAddressPrivate_GetPort
)
1192 LIST_TEST(NetAddressPrivate_GetAddress
)
1193 LIST_TEST(NetAddressPrivate_GetScopeID
)
1196 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, NetAddressPrivate
) {
1198 LIST_TEST(NetAddressPrivate_AreEqual
)
1199 LIST_TEST(NetAddressPrivate_AreHostsEqual
)
1200 LIST_TEST(NetAddressPrivate_Describe
)
1201 LIST_TEST(NetAddressPrivate_ReplacePort
)
1202 LIST_TEST(NetAddressPrivate_GetAnyAddress
)
1203 LIST_TEST(NetAddressPrivate_DescribeIPv6
)
1204 LIST_TEST(NetAddressPrivate_GetFamily
)
1205 LIST_TEST(NetAddressPrivate_GetPort
)
1206 LIST_TEST(NetAddressPrivate_GetAddress
)
1207 LIST_TEST(NetAddressPrivate_GetScopeID
)
1210 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest
, NetAddressPrivate
) {
1212 LIST_TEST(NetAddressPrivateUntrusted_AreEqual
)
1213 LIST_TEST(NetAddressPrivateUntrusted_AreHostsEqual
)
1214 LIST_TEST(NetAddressPrivateUntrusted_Describe
)
1215 LIST_TEST(NetAddressPrivateUntrusted_ReplacePort
)
1216 LIST_TEST(NetAddressPrivateUntrusted_GetAnyAddress
)
1217 LIST_TEST(NetAddressPrivateUntrusted_GetFamily
)
1218 LIST_TEST(NetAddressPrivateUntrusted_GetPort
)
1219 LIST_TEST(NetAddressPrivateUntrusted_GetAddress
)
1222 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest
, MAYBE_GLIBC(NetAddressPrivate
)) {
1224 LIST_TEST(NetAddressPrivateUntrusted_AreEqual
)
1225 LIST_TEST(NetAddressPrivateUntrusted_AreHostsEqual
)
1226 LIST_TEST(NetAddressPrivateUntrusted_Describe
)
1227 LIST_TEST(NetAddressPrivateUntrusted_ReplacePort
)
1228 LIST_TEST(NetAddressPrivateUntrusted_GetAnyAddress
)
1229 LIST_TEST(NetAddressPrivateUntrusted_GetFamily
)
1230 LIST_TEST(NetAddressPrivateUntrusted_GetPort
)
1231 LIST_TEST(NetAddressPrivateUntrusted_GetAddress
)
1234 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest
, NetAddressPrivate
) {
1236 LIST_TEST(NetAddressPrivateUntrusted_AreEqual
)
1237 LIST_TEST(NetAddressPrivateUntrusted_AreHostsEqual
)
1238 LIST_TEST(NetAddressPrivateUntrusted_Describe
)
1239 LIST_TEST(NetAddressPrivateUntrusted_ReplacePort
)
1240 LIST_TEST(NetAddressPrivateUntrusted_GetAnyAddress
)
1241 LIST_TEST(NetAddressPrivateUntrusted_GetFamily
)
1242 LIST_TEST(NetAddressPrivateUntrusted_GetPort
)
1243 LIST_TEST(NetAddressPrivateUntrusted_GetAddress
)
1247 // NetworkMonitor tests.
1248 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, NetworkMonitor
) {
1250 LIST_TEST(NetworkMonitor_Basic
)
1251 LIST_TEST(NetworkMonitor_2Monitors
)
1252 LIST_TEST(NetworkMonitor_DeleteInCallback
)
1255 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest
, NetworkMonitor
) {
1257 LIST_TEST(NetworkMonitor_Basic
)
1258 LIST_TEST(NetworkMonitor_2Monitors
)
1259 LIST_TEST(NetworkMonitor_DeleteInCallback
)
1262 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest
, MAYBE_GLIBC(NetworkMonitor
)) {
1264 LIST_TEST(NetworkMonitor_Basic
)
1265 LIST_TEST(NetworkMonitor_2Monitors
)
1266 LIST_TEST(NetworkMonitor_DeleteInCallback
)
1269 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest
, NetworkMonitor
) {
1271 LIST_TEST(NetworkMonitor_Basic
)
1272 LIST_TEST(NetworkMonitor_2Monitors
)
1273 LIST_TEST(NetworkMonitor_DeleteInCallback
)
1278 IN_PROC_BROWSER_TEST_F(PPAPITest
, Flash
) {
1280 LIST_TEST(Flash_SetInstanceAlwaysOnTop
)
1281 LIST_TEST(Flash_GetCommandLineArgs
)
1284 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, Flash
) {
1286 LIST_TEST(Flash_SetInstanceAlwaysOnTop
)
1287 LIST_TEST(Flash_GetCommandLineArgs
)
1291 // In-process WebSocket tests. Note, the WebSocket tests are split into two,
1292 // because all of them together sometimes take too long on windows:
1294 IN_PROC_BROWSER_TEST_F(PPAPITest
, WebSocket1
) {
1295 RunTestWithWebSocketServer(
1296 LIST_TEST(WebSocket_IsWebSocket
)
1297 LIST_TEST(WebSocket_UninitializedPropertiesAccess
)
1298 LIST_TEST(WebSocket_InvalidConnect
)
1299 LIST_TEST(WebSocket_Protocols
)
1300 LIST_TEST(WebSocket_GetURL
)
1301 LIST_TEST(WebSocket_ValidConnect
)
1302 LIST_TEST(WebSocket_InvalidClose
)
1303 LIST_TEST(WebSocket_ValidClose
)
1304 LIST_TEST(WebSocket_GetProtocol
)
1305 LIST_TEST(WebSocket_TextSendReceive
)
1306 LIST_TEST(WebSocket_BinarySendReceive
)
1307 LIST_TEST(WebSocket_StressedSendReceive
)
1308 LIST_TEST(WebSocket_BufferedAmount
)
1311 IN_PROC_BROWSER_TEST_F(PPAPITest
, WebSocket2
) {
1312 RunTestWithWebSocketServer(
1313 LIST_TEST(WebSocket_AbortCallsWithCallback
)
1314 LIST_TEST(WebSocket_AbortSendMessageCall
)
1315 LIST_TEST(WebSocket_AbortCloseCall
)
1316 LIST_TEST(WebSocket_AbortReceiveMessageCall
)
1317 LIST_TEST(WebSocket_CcInterfaces
)
1318 LIST_TEST(WebSocket_UtilityInvalidConnect
)
1319 LIST_TEST(WebSocket_UtilityProtocols
)
1320 LIST_TEST(WebSocket_UtilityGetURL
)
1321 LIST_TEST(WebSocket_UtilityValidConnect
)
1322 LIST_TEST(WebSocket_UtilityInvalidClose
)
1323 LIST_TEST(WebSocket_UtilityValidClose
)
1324 LIST_TEST(WebSocket_UtilityGetProtocol
)
1325 LIST_TEST(WebSocket_UtilityTextSendReceive
)
1326 LIST_TEST(WebSocket_UtilityBinarySendReceive
)
1327 LIST_TEST(WebSocket_UtilityBufferedAmount
));
1330 // Out-of-process WebSocket tests
1331 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, WebSocket1
) {
1332 RunTestWithWebSocketServer(
1333 LIST_TEST(WebSocket_IsWebSocket
)
1334 LIST_TEST(WebSocket_UninitializedPropertiesAccess
)
1335 LIST_TEST(WebSocket_InvalidConnect
)
1336 LIST_TEST(WebSocket_Protocols
)
1337 LIST_TEST(WebSocket_GetURL
)
1338 LIST_TEST(WebSocket_ValidConnect
)
1339 LIST_TEST(WebSocket_InvalidClose
)
1340 LIST_TEST(WebSocket_ValidClose
)
1341 LIST_TEST(WebSocket_GetProtocol
)
1342 LIST_TEST(WebSocket_TextSendReceive
)
1343 LIST_TEST(WebSocket_BinarySendReceive
)
1344 LIST_TEST(WebSocket_StressedSendReceive
)
1345 LIST_TEST(WebSocket_BufferedAmount
)
1348 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, WebSocket2
) {
1349 RunTestWithWebSocketServer(
1350 LIST_TEST(WebSocket_AbortCallsWithCallback
)
1351 LIST_TEST(WebSocket_AbortSendMessageCall
)
1352 LIST_TEST(WebSocket_AbortCloseCall
)
1353 LIST_TEST(WebSocket_AbortReceiveMessageCall
)
1354 LIST_TEST(WebSocket_CcInterfaces
)
1355 LIST_TEST(WebSocket_UtilityInvalidConnect
)
1356 LIST_TEST(WebSocket_UtilityProtocols
)
1357 LIST_TEST(WebSocket_UtilityGetURL
)
1358 LIST_TEST(WebSocket_UtilityValidConnect
)
1359 LIST_TEST(WebSocket_UtilityInvalidClose
)
1360 LIST_TEST(WebSocket_UtilityValidClose
)
1361 LIST_TEST(WebSocket_UtilityGetProtocol
)
1362 LIST_TEST(WebSocket_UtilityTextSendReceive
)
1363 LIST_TEST(WebSocket_UtilityBinarySendReceive
)
1364 LIST_TEST(WebSocket_UtilityBufferedAmount
));
1367 // NaClNewlib WebSocket tests
1368 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest
, WebSocket1
) {
1369 RunTestWithWebSocketServer(
1370 LIST_TEST(WebSocket_IsWebSocket
)
1371 LIST_TEST(WebSocket_UninitializedPropertiesAccess
)
1372 LIST_TEST(WebSocket_InvalidConnect
)
1373 LIST_TEST(WebSocket_Protocols
)
1374 LIST_TEST(WebSocket_GetURL
)
1375 LIST_TEST(WebSocket_ValidConnect
)
1376 LIST_TEST(WebSocket_InvalidClose
)
1377 LIST_TEST(WebSocket_ValidClose
)
1378 LIST_TEST(WebSocket_GetProtocol
)
1379 LIST_TEST(WebSocket_TextSendReceive
)
1380 LIST_TEST(WebSocket_BinarySendReceive
)
1381 LIST_TEST(WebSocket_StressedSendReceive
)
1382 LIST_TEST(WebSocket_BufferedAmount
)
1385 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest
, WebSocket2
) {
1386 RunTestWithWebSocketServer(
1387 LIST_TEST(WebSocket_AbortCallsWithCallback
)
1388 LIST_TEST(WebSocket_AbortSendMessageCall
)
1389 LIST_TEST(WebSocket_AbortCloseCall
)
1390 LIST_TEST(WebSocket_AbortReceiveMessageCall
)
1391 LIST_TEST(WebSocket_CcInterfaces
)
1392 LIST_TEST(WebSocket_UtilityInvalidConnect
)
1393 LIST_TEST(WebSocket_UtilityProtocols
)
1394 LIST_TEST(WebSocket_UtilityGetURL
)
1395 LIST_TEST(WebSocket_UtilityValidConnect
)
1396 LIST_TEST(WebSocket_UtilityInvalidClose
)
1397 LIST_TEST(WebSocket_UtilityValidClose
)
1398 LIST_TEST(WebSocket_UtilityGetProtocol
)
1399 LIST_TEST(WebSocket_UtilityTextSendReceive
)
1400 LIST_TEST(WebSocket_UtilityBinarySendReceive
)
1401 LIST_TEST(WebSocket_UtilityBufferedAmount
));
1404 // NaClGLibc WebSocket tests
1405 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest
, MAYBE_GLIBC(WebSocket1
)) {
1406 RunTestWithWebSocketServer(
1407 LIST_TEST(WebSocket_IsWebSocket
)
1408 LIST_TEST(WebSocket_UninitializedPropertiesAccess
)
1409 LIST_TEST(WebSocket_InvalidConnect
)
1410 LIST_TEST(WebSocket_Protocols
)
1411 LIST_TEST(WebSocket_GetURL
)
1412 LIST_TEST(WebSocket_ValidConnect
)
1413 LIST_TEST(WebSocket_InvalidClose
)
1414 LIST_TEST(WebSocket_ValidClose
)
1415 LIST_TEST(WebSocket_GetProtocol
)
1416 LIST_TEST(WebSocket_TextSendReceive
)
1417 LIST_TEST(WebSocket_BinarySendReceive
)
1418 LIST_TEST(WebSocket_StressedSendReceive
)
1419 LIST_TEST(WebSocket_BufferedAmount
)
1422 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest
, MAYBE_GLIBC(WebSocket2
)) {
1423 RunTestWithWebSocketServer(
1424 LIST_TEST(WebSocket_AbortCallsWithCallback
)
1425 LIST_TEST(WebSocket_AbortSendMessageCall
)
1426 LIST_TEST(WebSocket_AbortCloseCall
)
1427 LIST_TEST(WebSocket_AbortReceiveMessageCall
)
1428 LIST_TEST(WebSocket_CcInterfaces
)
1429 LIST_TEST(WebSocket_UtilityInvalidConnect
)
1430 LIST_TEST(WebSocket_UtilityProtocols
)
1431 LIST_TEST(WebSocket_UtilityGetURL
)
1432 LIST_TEST(WebSocket_UtilityValidConnect
)
1433 LIST_TEST(WebSocket_UtilityInvalidClose
)
1434 LIST_TEST(WebSocket_UtilityValidClose
)
1435 LIST_TEST(WebSocket_UtilityGetProtocol
)
1436 LIST_TEST(WebSocket_UtilityTextSendReceive
)
1437 LIST_TEST(WebSocket_UtilityBinarySendReceive
)
1438 LIST_TEST(WebSocket_UtilityBufferedAmount
));
1441 // PNaCl WebSocket tests
1442 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest
, WebSocket1
) {
1443 RunTestWithWebSocketServer(
1444 LIST_TEST(WebSocket_IsWebSocket
)
1445 LIST_TEST(WebSocket_UninitializedPropertiesAccess
)
1446 LIST_TEST(WebSocket_InvalidConnect
)
1447 LIST_TEST(WebSocket_Protocols
)
1448 LIST_TEST(WebSocket_GetURL
)
1449 LIST_TEST(WebSocket_ValidConnect
)
1450 LIST_TEST(WebSocket_InvalidClose
)
1451 LIST_TEST(WebSocket_ValidClose
)
1452 LIST_TEST(WebSocket_GetProtocol
)
1453 LIST_TEST(WebSocket_TextSendReceive
)
1454 LIST_TEST(WebSocket_BinarySendReceive
)
1455 LIST_TEST(WebSocket_StressedSendReceive
)
1456 LIST_TEST(WebSocket_BufferedAmount
)
1459 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest
, WebSocket2
) {
1460 RunTestWithWebSocketServer(
1461 LIST_TEST(WebSocket_AbortCallsWithCallback
)
1462 LIST_TEST(WebSocket_AbortSendMessageCall
)
1463 LIST_TEST(WebSocket_AbortCloseCall
)
1464 LIST_TEST(WebSocket_AbortReceiveMessageCall
)
1465 LIST_TEST(WebSocket_CcInterfaces
)
1466 LIST_TEST(WebSocket_UtilityInvalidConnect
)
1467 LIST_TEST(WebSocket_UtilityProtocols
)
1468 LIST_TEST(WebSocket_UtilityGetURL
)
1469 LIST_TEST(WebSocket_UtilityValidConnect
)
1470 LIST_TEST(WebSocket_UtilityInvalidClose
)
1471 LIST_TEST(WebSocket_UtilityValidClose
)
1472 LIST_TEST(WebSocket_UtilityGetProtocol
)
1473 LIST_TEST(WebSocket_UtilityTextSendReceive
)
1474 LIST_TEST(WebSocket_UtilityBinarySendReceive
)
1475 LIST_TEST(WebSocket_UtilityBufferedAmount
));
1479 // In-process AudioConfig tests
1480 IN_PROC_BROWSER_TEST_F(PPAPITest
, AudioConfig
) {
1482 LIST_TEST(AudioConfig_RecommendSampleRate
)
1483 LIST_TEST(AudioConfig_ValidConfigs
)
1484 LIST_TEST(AudioConfig_InvalidConfigs
));
1487 // Out-of-process AudioConfig tests
1488 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, AudioConfig
) {
1490 LIST_TEST(AudioConfig_RecommendSampleRate
)
1491 LIST_TEST(AudioConfig_ValidConfigs
)
1492 LIST_TEST(AudioConfig_InvalidConfigs
));
1495 // NaClNewlib AudioConfig tests
1496 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest
, AudioConfig
) {
1498 LIST_TEST(AudioConfig_RecommendSampleRate
)
1499 LIST_TEST(AudioConfig_ValidConfigs
)
1500 LIST_TEST(AudioConfig_InvalidConfigs
));
1503 // NaClGLibc AudioConfig tests
1504 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest
, MAYBE_GLIBC(AudioConfig
)) {
1506 LIST_TEST(AudioConfig_RecommendSampleRate
)
1507 LIST_TEST(AudioConfig_ValidConfigs
)
1508 LIST_TEST(AudioConfig_InvalidConfigs
));
1511 // PNaCl AudioConfig tests
1512 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest
, AudioConfig
) {
1514 LIST_TEST(AudioConfig_RecommendSampleRate
)
1515 LIST_TEST(AudioConfig_ValidConfigs
)
1516 LIST_TEST(AudioConfig_InvalidConfigs
));
1519 // PPB_Audio is not supported in-process.
1520 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, Audio
) {
1521 RunTest(LIST_TEST(Audio_Creation
)
1522 LIST_TEST(Audio_DestroyNoStop
)
1523 LIST_TEST(Audio_Failures
)
1524 LIST_TEST(Audio_AudioCallback1
)
1525 LIST_TEST(Audio_AudioCallback2
)
1526 LIST_TEST(Audio_AudioCallback3
)
1527 LIST_TEST(Audio_AudioCallback4
));
1529 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest
, Audio
) {
1530 RunTestViaHTTP(LIST_TEST(Audio_Creation
)
1531 LIST_TEST(Audio_DestroyNoStop
)
1532 LIST_TEST(Audio_Failures
)
1533 LIST_TEST(Audio_AudioCallback1
)
1534 LIST_TEST(Audio_AudioCallback2
)
1535 LIST_TEST(Audio_AudioCallback3
)
1536 LIST_TEST(Audio_AudioCallback4
));
1538 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest
, MAYBE_GLIBC(Audio
)) {
1539 RunTestViaHTTP(LIST_TEST(Audio_Creation
)
1540 LIST_TEST(Audio_DestroyNoStop
)
1541 LIST_TEST(Audio_Failures
)
1542 LIST_TEST(Audio_AudioCallback1
)
1543 LIST_TEST(Audio_AudioCallback2
)
1544 LIST_TEST(Audio_AudioCallback3
)
1545 LIST_TEST(Audio_AudioCallback4
));
1547 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest
, Audio
) {
1548 RunTestViaHTTP(LIST_TEST(Audio_Creation
)
1549 LIST_TEST(Audio_DestroyNoStop
)
1550 LIST_TEST(Audio_Failures
)
1551 LIST_TEST(Audio_AudioCallback1
)
1552 LIST_TEST(Audio_AudioCallback2
)
1553 LIST_TEST(Audio_AudioCallback3
)
1554 LIST_TEST(Audio_AudioCallback4
));
1557 TEST_PPAPI_IN_PROCESS(View_CreatedVisible
);
1558 TEST_PPAPI_OUT_OF_PROCESS(View_CreatedVisible
);
1559 TEST_PPAPI_NACL(View_CreatedVisible
);
1560 // This test ensures that plugins created in a background tab have their
1561 // initial visibility set to false. We don't bother testing in-process for this
1562 // custom test since the out of process code also exercises in-process.
1564 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, View_CreateInvisible
) {
1565 // Make a second tab in the foreground.
1566 GURL url
= GetTestFileUrl("View_CreatedInvisible");
1567 chrome::NavigateParams
params(browser(), url
, content::PAGE_TRANSITION_LINK
);
1568 params
.disposition
= NEW_BACKGROUND_TAB
;
1569 ui_test_utils::NavigateToURL(¶ms
);
1572 // This test messes with tab visibility so is custom.
1573 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, View_PageHideShow
) {
1574 // The plugin will be loaded in the foreground tab and will send us a message.
1575 PPAPITestMessageHandler handler
;
1576 JavascriptTestObserver
observer(
1577 browser()->tab_strip_model()->GetActiveWebContents(),
1580 GURL url
= GetTestFileUrl("View_PageHideShow");
1581 ui_test_utils::NavigateToURL(browser(), url
);
1583 ASSERT_TRUE(observer
.Run()) << handler
.error_message();
1584 EXPECT_STREQ("TestPageHideShow:Created", handler
.message().c_str());
1587 // Make a new tab to cause the original one to hide, this should trigger the
1588 // next phase of the test.
1589 chrome::NavigateParams
params(browser(), GURL(content::kAboutBlankURL
),
1590 content::PAGE_TRANSITION_LINK
);
1591 params
.disposition
= NEW_FOREGROUND_TAB
;
1592 ui_test_utils::NavigateToURL(¶ms
);
1594 // Wait until the test acks that it got hidden.
1595 ASSERT_TRUE(observer
.Run()) << handler
.error_message();
1596 EXPECT_STREQ("TestPageHideShow:Hidden", handler
.message().c_str());
1599 // Switch back to the test tab.
1600 browser()->tab_strip_model()->ActivateTabAt(0, true);
1602 ASSERT_TRUE(observer
.Run()) << handler
.error_message();
1603 EXPECT_STREQ("PASS", handler
.message().c_str());
1606 // Tests that if a plugin accepts touch events, the browser knows to send touch
1607 // events to the renderer.
1608 IN_PROC_BROWSER_TEST_F(PPAPITest
, InputEvent_AcceptTouchEvent
) {
1609 std::string positive_tests
[] = { "InputEvent_AcceptTouchEvent_1",
1610 "InputEvent_AcceptTouchEvent_2",
1611 "InputEvent_AcceptTouchEvent_3",
1612 "InputEvent_AcceptTouchEvent_4"
1615 for (size_t i
= 0; i
< arraysize(positive_tests
); ++i
) {
1616 RenderViewHost
* host
= browser()->tab_strip_model()->
1617 GetActiveWebContents()->GetRenderViewHost();
1618 RunTest(positive_tests
[i
]);
1619 EXPECT_TRUE(content::RenderViewHostTester::HasTouchEventHandler(host
));
1623 IN_PROC_BROWSER_TEST_F(PPAPITest
, View
) {
1624 RunTest(LIST_TEST(View_SizeChange
)
1625 LIST_TEST(View_ClipChange
));
1627 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, View
) {
1628 RunTest(LIST_TEST(View_SizeChange
)
1629 LIST_TEST(View_ClipChange
));
1631 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest
, View
) {
1632 RunTestViaHTTP(LIST_TEST(View_SizeChange
)
1633 LIST_TEST(View_ClipChange
));
1635 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest
, MAYBE_GLIBC(View
)) {
1636 RunTestViaHTTP(LIST_TEST(View_SizeChange
)
1637 LIST_TEST(View_ClipChange
));
1639 IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest
, View
) {
1640 RunTestViaHTTP(LIST_TEST(View_SizeChange
)
1641 LIST_TEST(View_ClipChange
));
1644 IN_PROC_BROWSER_TEST_F(PPAPITest
, FlashMessageLoop
) {
1645 RunTest(LIST_TEST(FlashMessageLoop_Basics
)
1646 LIST_TEST(FlashMessageLoop_RunWithoutQuit
));
1648 #if defined(OS_LINUX) // Disabled due to flakiness http://crbug.com/316925
1649 #define MAYBE_FlashMessageLoop DISABLED_FlashMessageLoop
1651 #define MAYBE_FlashMessageLoop FlashMessageLoop
1653 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, MAYBE_FlashMessageLoop
) {
1654 RunTest(LIST_TEST(FlashMessageLoop_Basics
)
1655 LIST_TEST(FlashMessageLoop_RunWithoutQuit
));
1658 TEST_PPAPI_OUT_OF_PROCESS(MediaStreamAudioTrack
)
1659 TEST_PPAPI_NACL(MediaStreamAudioTrack
)
1661 TEST_PPAPI_OUT_OF_PROCESS(MediaStreamVideoTrack
)
1662 TEST_PPAPI_NACL(MediaStreamVideoTrack
)
1664 TEST_PPAPI_IN_PROCESS(MouseCursor
)
1665 TEST_PPAPI_OUT_OF_PROCESS(MouseCursor
)
1666 TEST_PPAPI_NACL(MouseCursor
)
1668 // PPB_NetworkProxy is not supported in-process.
1669 TEST_PPAPI_OUT_OF_PROCESS(NetworkProxy
)
1670 TEST_PPAPI_NACL(NetworkProxy
)
1672 TEST_PPAPI_OUT_OF_PROCESS(TrueTypeFont
)
1673 TEST_PPAPI_NACL(TrueTypeFont
)
1675 TEST_PPAPI_OUT_OF_PROCESS(VideoDestination
)
1676 TEST_PPAPI_NACL(VideoDestination
)
1678 TEST_PPAPI_OUT_OF_PROCESS(VideoSource
)
1679 TEST_PPAPI_NACL(VideoSource
)
1681 // PPB_Printing only implemented for out of process.
1682 TEST_PPAPI_OUT_OF_PROCESS(Printing
)
1684 // PPB_MessageLoop is only supported out-of-process.
1685 // TODO(dmichael): Enable for NaCl with the IPC proxy. crbug.com/116317
1686 TEST_PPAPI_OUT_OF_PROCESS(MessageLoop_Basics
)
1687 // MessageLoop_Post starts a thread so only run it if pepper threads are
1689 #ifdef ENABLE_PEPPER_THREADING
1690 TEST_PPAPI_OUT_OF_PROCESS(MessageLoop_Post
)
1693 // Going forward, Flash APIs will only work out-of-process.
1694 TEST_PPAPI_OUT_OF_PROCESS(Flash_GetLocalTimeZoneOffset
)
1695 TEST_PPAPI_OUT_OF_PROCESS(Flash_GetProxyForURL
)
1696 TEST_PPAPI_OUT_OF_PROCESS(Flash_GetSetting
)
1697 TEST_PPAPI_OUT_OF_PROCESS(Flash_SetCrashData
)
1698 // http://crbug.com/176822
1699 #if !defined(OS_WIN)
1700 TEST_PPAPI_OUT_OF_PROCESS(FlashClipboard
)
1702 TEST_PPAPI_OUT_OF_PROCESS(FlashFile
)
1703 // Mac/Aura reach NOTIMPLEMENTED/time out.
1704 // mac: http://crbug.com/96767
1705 // aura: http://crbug.com/104384
1706 #if defined(OS_MACOSX)
1707 #define MAYBE_FlashFullscreen DISABLED_FlashFullscreen
1709 #define MAYBE_FlashFullscreen FlashFullscreen
1711 TEST_PPAPI_OUT_OF_PROCESS(MAYBE_FlashFullscreen
)
1713 TEST_PPAPI_OUT_OF_PROCESS(PDF
)
1715 // TODO(dalecurtis): Renable once the platform verification infobar has been
1716 // implemented; see http://crbug.com/270908
1717 // #if defined(OS_CHROMEOS)
1718 // TEST_PPAPI_OUT_OF_PROCESS(PlatformVerificationPrivate)
1721 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest
, FlashDRM
) {
1723 #if (defined(OS_WIN) && defined(ENABLE_RLZ)) || defined(OS_CHROMEOS)
1724 // Only implemented on Windows and ChromeOS currently.
1725 LIST_TEST(FlashDRM_GetDeviceID
)
1727 LIST_TEST(FlashDRM_GetHmonitor
)
1728 LIST_TEST(FlashDRM_GetVoucherFile
));
1731 TEST_PPAPI_IN_PROCESS(TalkPrivate
)
1732 TEST_PPAPI_OUT_OF_PROCESS(TalkPrivate
)
1734 #if defined(OS_CHROMEOS)
1735 TEST_PPAPI_OUT_OF_PROCESS(OutputProtectionPrivate
)