blob: fb03318c01fcbf999abcd3a767ece9952d257576 [file] [log] [blame]
[email protected]50a7f3a2012-01-05 14:30:501// Copyright (c) 2012 The Chromium Authors. All rights reserved.
[email protected]37d06912010-05-20 20:00:312// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
[email protected]f1b5af92012-07-09 19:09:155#include "chrome/test/ppapi/ppapi_test.h"
[email protected]59261242012-03-19 13:08:596
[email protected]49c09c15d2010-12-10 02:46:037#include "base/test/test_timeouts.h"
[email protected]37d06912010-05-20 20:00:318#include "build/build_config.h"
[email protected]bf033f92012-09-04 10:28:009#include "chrome/browser/content_settings/host_content_settings_map.h"
10#include "chrome/browser/profiles/profile.h"
[email protected]f237c0f2012-03-10 07:49:1011#include "chrome/browser/ui/browser.h"
12#include "chrome/browser/ui/browser_navigator.h"
[email protected]57892182012-12-03 19:15:3913#include "chrome/browser/ui/tabs/tab_strip_model.h"
[email protected]b0347b32012-08-22 22:52:1614#include "chrome/test/base/javascript_test_observer.h"
[email protected]efc3a40e2011-11-23 02:32:5115#include "chrome/test/base/ui_test_utils.h"
[email protected]f237c0f2012-03-10 07:49:1016#include "content/public/browser/web_contents.h"
[email protected]09c37ba2012-01-05 18:00:3317#include "content/public/common/url_constants.h"
[email protected]5b8f977d2012-06-28 21:19:3718#include "content/public/test/test_renderer_host.h"
[email protected]37d06912010-05-20 20:00:3119
[email protected]f237c0f2012-03-10 07:49:1020using content::RenderViewHost;
21
[email protected]d4067422011-12-07 05:24:2422// This macro finesses macro expansion to do what we want.
23#define STRIP_PREFIXES(test_name) StripPrefixes(#test_name)
[email protected]cee34b72011-11-18 21:52:4024
[email protected]d8eba1a2011-07-20 21:41:5525// Use these macros to run the tests for a specific interface.
26// Most interfaces should be tested with both macros.
27#define TEST_PPAPI_IN_PROCESS(test_name) \
[email protected]f237c0f2012-03-10 07:49:1028 IN_PROC_BROWSER_TEST_F(PPAPITest, test_name) { \
[email protected]d4067422011-12-07 05:24:2429 RunTest(STRIP_PREFIXES(test_name)); \
[email protected]d8eba1a2011-07-20 21:41:5530 }
31#define TEST_PPAPI_OUT_OF_PROCESS(test_name) \
[email protected]f237c0f2012-03-10 07:49:1032 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, test_name) { \
[email protected]d4067422011-12-07 05:24:2433 RunTest(STRIP_PREFIXES(test_name)); \
[email protected]d8eba1a2011-07-20 21:41:5534 }
[email protected]9815108e2011-05-27 21:50:2835
[email protected]d8eba1a2011-07-20 21:41:5536// Similar macros that test over HTTP.
37#define TEST_PPAPI_IN_PROCESS_VIA_HTTP(test_name) \
[email protected]f237c0f2012-03-10 07:49:1038 IN_PROC_BROWSER_TEST_F(PPAPITest, test_name) { \
[email protected]d4067422011-12-07 05:24:2439 RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
[email protected]d8eba1a2011-07-20 21:41:5540 }
41#define TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(test_name) \
[email protected]f237c0f2012-03-10 07:49:1042 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, test_name) { \
[email protected]d4067422011-12-07 05:24:2443 RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
[email protected]d8eba1a2011-07-20 21:41:5544 }
[email protected]97f706c2011-07-11 20:32:5345
[email protected]6c113402012-03-23 01:31:5146// Similar macros that test with an SSL server.
47#define TEST_PPAPI_IN_PROCESS_WITH_SSL_SERVER(test_name) \
48 IN_PROC_BROWSER_TEST_F(PPAPITest, test_name) { \
49 RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
50 }
51#define TEST_PPAPI_OUT_OF_PROCESS_WITH_SSL_SERVER(test_name) \
52 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, test_name) { \
53 RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
54 }
55
[email protected]cd019be2012-05-15 23:23:4856// Similar macros that test with WebSocket server.
[email protected]31c1a7e2011-11-26 03:45:3057#define TEST_PPAPI_IN_PROCESS_WITH_WS(test_name) \
[email protected]f237c0f2012-03-10 07:49:1058 IN_PROC_BROWSER_TEST_F(PPAPITest, test_name) { \
[email protected]d4067422011-12-07 05:24:2459 RunTestWithWebSocketServer(STRIP_PREFIXES(test_name)); \
[email protected]31c1a7e2011-11-26 03:45:3060 }
61#define TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(test_name) \
[email protected]f237c0f2012-03-10 07:49:1062 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, test_name) { \
[email protected]d4067422011-12-07 05:24:2463 RunTestWithWebSocketServer(STRIP_PREFIXES(test_name)); \
[email protected]31c1a7e2011-11-26 03:45:3064 }
65
[email protected]cd019be2012-05-15 23:23:4866// Similar macros for tests that require an audio device.
67#define TEST_PPAPI_IN_PROCESS_WITH_AUDIO_OUTPUT(test_name) \
68 IN_PROC_BROWSER_TEST_F(PPAPITest, test_name) { \
69 RunTestIfAudioOutputAvailable(STRIP_PREFIXES(test_name)); \
70 }
71#define TEST_PPAPI_OUT_OF_PROCESS_WITH_AUDIO_OUTPUT(test_name) \
72 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, test_name) { \
73 RunTestIfAudioOutputAvailable(STRIP_PREFIXES(test_name)); \
74 }
[email protected]31c1a7e2011-11-26 03:45:3075
[email protected]c1af406f2011-11-27 07:05:2076#if defined(DISABLE_NACL)
77#define TEST_PPAPI_NACL_VIA_HTTP(test_name)
[email protected]240502342011-12-22 20:07:4978#define TEST_PPAPI_NACL_VIA_HTTP_DISALLOWED_SOCKETS(test_name)
[email protected]6c113402012-03-23 01:31:5179#define TEST_PPAPI_NACL_WITH_SSL_SERVER(test_name)
[email protected]9082aa5b2012-01-19 08:44:4780#define TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(test_name)
[email protected]e40409d2012-05-16 08:01:0581#define TEST_PPAPI_NACL_VIA_HTTP_WITH_AUDIO_OUTPUT(test_name)
[email protected]c1af406f2011-11-27 07:05:2082#else
[email protected]d8eba1a2011-07-20 21:41:5583
[email protected]cee34b72011-11-18 21:52:4084// NaCl based PPAPI tests
85#define TEST_PPAPI_NACL_VIA_HTTP(test_name) \
[email protected]4223f8d2012-06-07 01:10:0686 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, test_name) { \
87 RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
88 } \
89 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, test_name) { \
[email protected]9082aa5b2012-01-19 08:44:4790 RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
91 }
[email protected]240502342011-12-22 20:07:4992
93// NaCl based PPAPI tests with disallowed socket API
94#define TEST_PPAPI_NACL_VIA_HTTP_DISALLOWED_SOCKETS(test_name) \
[email protected]f237c0f2012-03-10 07:49:1095 IN_PROC_BROWSER_TEST_F(PPAPINaClTestDisallowedSockets, test_name) { \
[email protected]9082aa5b2012-01-19 08:44:4796 RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
97 }
98
[email protected]6c113402012-03-23 01:31:5199// NaCl based PPAPI tests with SSL server
100#define TEST_PPAPI_NACL_WITH_SSL_SERVER(test_name) \
[email protected]4223f8d2012-06-07 01:10:06101 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, test_name) { \
102 RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
103 } \
104 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, test_name) { \
[email protected]6c113402012-03-23 01:31:51105 RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
106 }
107
[email protected]9082aa5b2012-01-19 08:44:47108// NaCl based PPAPI tests with WebSocket server
109#define TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(test_name) \
[email protected]4223f8d2012-06-07 01:10:06110 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, test_name) { \
111 RunTestWithWebSocketServer(STRIP_PREFIXES(test_name)); \
112 } \
113 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, test_name) { \
[email protected]9082aa5b2012-01-19 08:44:47114 RunTestWithWebSocketServer(STRIP_PREFIXES(test_name)); \
115 }
[email protected]cd019be2012-05-15 23:23:48116
117// NaCl based PPAPI tests requiring an Audio device.
118#define TEST_PPAPI_NACL_VIA_HTTP_WITH_AUDIO_OUTPUT(test_name) \
[email protected]4223f8d2012-06-07 01:10:06119 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, test_name) { \
120 RunTestViaHTTPIfAudioOutputAvailable(STRIP_PREFIXES(test_name)); \
121 } \
122 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, test_name) { \
[email protected]cd019be2012-05-15 23:23:48123 RunTestViaHTTPIfAudioOutputAvailable(STRIP_PREFIXES(test_name)); \
124 }
[email protected]c1af406f2011-11-27 07:05:20125#endif
126
[email protected]cee34b72011-11-18 21:52:40127
[email protected]d8eba1a2011-07-20 21:41:55128//
129// Interface tests.
130//
[email protected]d8eba1a2011-07-20 21:41:55131
[email protected]a9d504a2011-11-22 22:46:47132// Disable tests under ASAN. http://crbug.com/104832.
133// This is a bit heavy handed, but the majority of these tests fail under ASAN.
134// See bug for history.
135#if !defined(ADDRESS_SANITIZER)
136
[email protected]d8eba1a2011-07-20 21:41:55137TEST_PPAPI_IN_PROCESS(Broker)
[email protected]0caf2302012-02-14 21:35:25138// Flaky, http://crbug.com/111355
139TEST_PPAPI_OUT_OF_PROCESS(DISABLED_Broker)
[email protected]d8eba1a2011-07-20 21:41:55140
[email protected]79802e42012-10-03 20:51:50141IN_PROC_BROWSER_TEST_F(PPAPIBrokerInfoBarTest, Accept) {
[email protected]bf033f92012-09-04 10:28:00142 // Accepting the infobar should grant permission to access the PPAPI broker.
143 InfoBarObserver observer;
144 observer.ExpectInfoBarAndAccept(true);
145
[email protected]83d12c8d2012-12-10 19:28:46146 // 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");
[email protected]bf033f92012-09-04 10:28:00151
152 // It should also set a content settings exception for the site.
[email protected]83d12c8d2012-12-10 19:28:46153 GURL url = GetTestFileUrl("Broker_ConnectPermissionGranted");
[email protected]bf033f92012-09-04 10:28:00154 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
[email protected]79802e42012-10-03 20:51:50161IN_PROC_BROWSER_TEST_F(PPAPIBrokerInfoBarTest, Deny) {
[email protected]bf033f92012-09-04 10:28:00162 // Canceling the infobar should deny permission to access the PPAPI broker.
163 InfoBarObserver observer;
164 observer.ExpectInfoBarAndAccept(false);
165
[email protected]83d12c8d2012-12-10 19:28:46166 // 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");
[email protected]bf033f92012-09-04 10:28:00171
[email protected]764182802012-11-07 12:27:33172 // It should also set a content settings exception for the site.
[email protected]83d12c8d2012-12-10 19:28:46173 GURL url = GetTestFileUrl("Broker_ConnectPermissionDenied");
[email protected]bf033f92012-09-04 10:28:00174 HostContentSettingsMap* content_settings =
175 browser()->profile()->GetHostContentSettingsMap();
[email protected]764182802012-11-07 12:27:33176 EXPECT_EQ(CONTENT_SETTING_BLOCK,
[email protected]bf033f92012-09-04 10:28:00177 content_settings->GetContentSetting(
178 url, url, CONTENT_SETTINGS_TYPE_PPAPI_BROKER, std::string()));
179}
180
181IN_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;
188
189 RunTest("Broker_ConnectPermissionDenied");
[email protected]83d12c8d2012-12-10 19:28:46190 RunTest("Broker_IsAllowedPermissionDenied");
[email protected]bf033f92012-09-04 10:28:00191}
192
193IN_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;
200
201 RunTest("Broker_ConnectPermissionGranted");
[email protected]83d12c8d2012-12-10 19:28:46202 RunTest("Broker_IsAllowedPermissionGranted");
[email protected]bf033f92012-09-04 10:28:00203}
204
[email protected]598816ad2012-12-13 01:34:32205TEST_PPAPI_IN_PROCESS(Console)
206TEST_PPAPI_OUT_OF_PROCESS(Console)
207TEST_PPAPI_NACL_VIA_HTTP(Console)
208
[email protected]d8eba1a2011-07-20 21:41:55209TEST_PPAPI_IN_PROCESS(Core)
210TEST_PPAPI_OUT_OF_PROCESS(Core)
[email protected]70f50da2012-07-13 18:32:00211TEST_PPAPI_NACL_VIA_HTTP(Core)
[email protected]d8eba1a2011-07-20 21:41:55212
[email protected]a5493592012-08-30 05:49:26213#if defined(OS_CHROMEOS)
214#define MAYBE_InputEvent InputEvent
215#elif defined(OS_LINUX)
[email protected]1f8b15f2011-12-30 12:45:09216// Times out on Linux. http://crbug.com/108859
[email protected]1f8b15f2011-12-30 12:45:09217#define MAYBE_InputEvent DISABLED_InputEvent
[email protected]50a7f3a2012-01-05 14:30:50218#elif defined(OS_MACOSX)
219// Flaky on Mac. http://crbug.com/109258
[email protected]0caf2302012-02-14 21:35:25220#define MAYBE_InputEvent DISABLED_InputEvent
[email protected]1f8b15f2011-12-30 12:45:09221#else
222#define MAYBE_InputEvent InputEvent
223#endif
224
[email protected]48af53602012-07-02 06:31:32225// Flaky on Linux and Windows. http://crbug.com/135403
226#if defined(OS_LINUX) || defined(OS_WIN)
227#define MAYBE_ImeInputEvent DISABLED_ImeInputEvent
228#else
229#define MAYBE_ImeInputEvent ImeInputEvent
230#endif
231
[email protected]172389962012-12-12 13:09:20232#if defined(OS_WIN) && defined(USE_AURA)
233#define MAYBE_WebSocket_AbortReceiveMessageCall \
234 DISABLED_WebSocket_AbortReceiveMessageCall
235#else
236#define MAYBE_WebSocket_AbortReceiveMessageCall \
237 WebSocket_AbortReceiveMessageCall
238#endif
239
[email protected]1f8b15f2011-12-30 12:45:09240TEST_PPAPI_IN_PROCESS(MAYBE_InputEvent)
241TEST_PPAPI_OUT_OF_PROCESS(MAYBE_InputEvent)
[email protected]08610102011-12-17 14:24:30242// TODO(bbudge) Enable when input events are proxied correctly for NaCl.
243TEST_PPAPI_NACL_VIA_HTTP(DISABLED_InputEvent)
[email protected]ed33e2e2011-11-20 21:18:07244
[email protected]48af53602012-07-02 06:31:32245TEST_PPAPI_IN_PROCESS(MAYBE_ImeInputEvent)
246TEST_PPAPI_OUT_OF_PROCESS(MAYBE_ImeInputEvent)
[email protected]397c23962012-05-21 07:09:32247// TODO(kinaba) Enable when IME events are proxied correctly for NaCl.
248TEST_PPAPI_NACL_VIA_HTTP(DISABLED_ImeInputEvent)
249
[email protected]13e343c2012-03-16 22:34:22250TEST_PPAPI_IN_PROCESS(Instance_ExecuteScript);
251TEST_PPAPI_OUT_OF_PROCESS(Instance_ExecuteScript)
252// ExecuteScript isn't supported by NaCl.
253
254// We run and reload the RecursiveObjects test to ensure that the InstanceObject
255// (and others) are properly cleaned up after the first run.
256IN_PROC_BROWSER_TEST_F(PPAPITest, Instance_RecursiveObjects) {
257 RunTestAndReload("Instance_RecursiveObjects");
258}
259// TODO(dmichael): Make it work out-of-process (or at least see whether we
260// care).
261IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,
262 DISABLED_Instance_RecursiveObjects) {
263 RunTestAndReload("Instance_RecursiveObjects");
264}
[email protected]2baf7ace2012-06-22 18:51:20265TEST_PPAPI_IN_PROCESS(Instance_LeakedObjectDestructors);
266TEST_PPAPI_OUT_OF_PROCESS(Instance_LeakedObjectDestructors);
[email protected]13e343c2012-03-16 22:34:22267// ScriptableObjects aren't supported in NaCl, so Instance_RecursiveObjects and
268// Instance_TestLeakedObjectDestructors don't make sense for NaCl.
[email protected]4d849c62010-09-02 16:00:12269
[email protected]d8eba1a2011-07-20 21:41:55270TEST_PPAPI_IN_PROCESS(Graphics2D)
[email protected]779a24a42011-09-13 05:41:58271TEST_PPAPI_OUT_OF_PROCESS(Graphics2D)
[email protected]0cd5b9df2012-06-28 19:33:33272// Graphics2D_Dev isn't supported in NaCl, only test the other interfaces
273// TODO(jhorwich) Enable when Graphics2D_Dev interfaces are proxied in NaCl.
274TEST_PPAPI_NACL_VIA_HTTP(Graphics2D_InvalidResource)
275TEST_PPAPI_NACL_VIA_HTTP(Graphics2D_InvalidSize)
276TEST_PPAPI_NACL_VIA_HTTP(Graphics2D_Humongous)
277TEST_PPAPI_NACL_VIA_HTTP(Graphics2D_InitToZero)
278TEST_PPAPI_NACL_VIA_HTTP(Graphics2D_Describe)
279TEST_PPAPI_NACL_VIA_HTTP(Graphics2D_Paint)
280TEST_PPAPI_NACL_VIA_HTTP(Graphics2D_Scroll)
281TEST_PPAPI_NACL_VIA_HTTP(Graphics2D_Replace)
282TEST_PPAPI_NACL_VIA_HTTP(Graphics2D_Flush)
[email protected]29652cf2012-09-27 20:54:03283TEST_PPAPI_NACL_VIA_HTTP(Graphics2D_FlushOffscreenUpdate)
[email protected]08e65c12012-11-29 18:53:29284TEST_PPAPI_NACL_VIA_HTTP(Graphics2D_BindNull)
[email protected]1559f512010-05-25 04:21:49285
[email protected]2cb9e5f2012-11-28 01:06:27286#if defined(OS_WIN) && !defined(USE_AURA)
287// These tests fail with the test compositor which is what's used by default for
288// browser tests on Windows Aura. Renable when the software compositor is
289// available.
[email protected]46c9a052012-06-27 19:27:26290TEST_PPAPI_IN_PROCESS(Graphics3D)
291TEST_PPAPI_OUT_OF_PROCESS(Graphics3D)
292TEST_PPAPI_NACL_VIA_HTTP(Graphics3D)
[email protected]2cb9e5f2012-11-28 01:06:27293#endif
[email protected]46c9a052012-06-27 19:27:26294
[email protected]d8eba1a2011-07-20 21:41:55295TEST_PPAPI_IN_PROCESS(ImageData)
[email protected]c4d5960e52011-07-21 21:47:43296TEST_PPAPI_OUT_OF_PROCESS(ImageData)
[email protected]0f5b6ccb2012-08-09 16:21:15297TEST_PPAPI_NACL_VIA_HTTP(ImageData)
[email protected]4faecb52010-06-18 23:27:11298
[email protected]7a26d92e2012-02-17 20:15:25299TEST_PPAPI_IN_PROCESS(BrowserFont)
300TEST_PPAPI_OUT_OF_PROCESS(BrowserFont)
301
[email protected]d8eba1a2011-07-20 21:41:55302TEST_PPAPI_IN_PROCESS(Buffer)
303TEST_PPAPI_OUT_OF_PROCESS(Buffer)
[email protected]4faecb52010-06-18 23:27:11304
[email protected]7000bbe22012-12-04 21:21:21305TEST_PPAPI_OUT_OF_PROCESS_WITH_SSL_SERVER(TCPSocketPrivate)
306TEST_PPAPI_IN_PROCESS_WITH_SSL_SERVER(TCPSocketPrivate)
307TEST_PPAPI_NACL_WITH_SSL_SERVER(TCPSocketPrivate)
[email protected]ef5e98e2011-12-06 09:49:18308
[email protected]92a794992012-04-12 03:38:22309TEST_PPAPI_OUT_OF_PROCESS_WITH_SSL_SERVER(TCPSocketPrivateTrusted)
310TEST_PPAPI_IN_PROCESS_WITH_SSL_SERVER(TCPSocketPrivateTrusted)
311
[email protected]2cb83102012-09-18 19:13:01312// UDPSocketPrivate tests.
313// UDPSocketPrivate_Broadcast is disabled for OSX because it requires
314// root permissions on OSX 10.7+.
315TEST_PPAPI_IN_PROCESS_VIA_HTTP(UDPSocketPrivate_Connect)
316TEST_PPAPI_IN_PROCESS_VIA_HTTP(UDPSocketPrivate_ConnectFailure)
317#if !defined(OS_MACOSX)
318TEST_PPAPI_IN_PROCESS_VIA_HTTP(UDPSocketPrivate_Broadcast)
319#endif // !defined(OS_MACOSX)
320TEST_PPAPI_IN_PROCESS_VIA_HTTP(UDPSocketPrivate_SetSocketFeatureErrors)
321TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(UDPSocketPrivate_Connect)
322TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(UDPSocketPrivate_ConnectFailure)
323#if !defined(OS_MACOSX)
324TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(UDPSocketPrivate_Broadcast)
325#endif // !defined(OS_MACOSX)
326TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(UDPSocketPrivate_SetSocketFeatureErrors)
327TEST_PPAPI_NACL_VIA_HTTP(UDPSocketPrivate_Connect)
328TEST_PPAPI_NACL_VIA_HTTP(UDPSocketPrivate_ConnectFailure)
329#if !defined(OS_MACOSX)
330TEST_PPAPI_NACL_VIA_HTTP(UDPSocketPrivate_Broadcast)
331#endif // !defined(OS_MACOSX)
332TEST_PPAPI_NACL_VIA_HTTP(UDPSocketPrivate_SetSocketFeatureErrors)
[email protected]ef5e98e2011-12-06 09:49:18333
[email protected]50da4202012-03-11 11:07:12334TEST_PPAPI_NACL_VIA_HTTP_DISALLOWED_SOCKETS(TCPServerSocketPrivateDisallowed)
[email protected]240502342011-12-22 20:07:49335TEST_PPAPI_NACL_VIA_HTTP_DISALLOWED_SOCKETS(TCPSocketPrivateDisallowed)
336TEST_PPAPI_NACL_VIA_HTTP_DISALLOWED_SOCKETS(UDPSocketPrivateDisallowed)
337
[email protected]20e31122012-02-22 15:56:03338TEST_PPAPI_IN_PROCESS_VIA_HTTP(TCPServerSocketPrivate)
[email protected]2d011e82012-03-15 09:39:56339TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(TCPServerSocketPrivate)
[email protected]7e8b061f2012-04-05 15:03:18340TEST_PPAPI_NACL_VIA_HTTP(TCPServerSocketPrivate)
[email protected]20e31122012-02-22 15:56:03341
[email protected]24931102012-03-15 01:21:27342TEST_PPAPI_IN_PROCESS_VIA_HTTP(HostResolverPrivate_Resolve)
[email protected]2baf7ace2012-06-22 18:51:20343TEST_PPAPI_IN_PROCESS_VIA_HTTP(HostResolverPrivate_ResolveIPv4)
[email protected]24931102012-03-15 01:21:27344TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(HostResolverPrivate_Resolve)
[email protected]2baf7ace2012-06-22 18:51:20345TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(HostResolverPrivate_ResolveIPv4)
[email protected]ec366702012-04-11 10:16:32346TEST_PPAPI_NACL_VIA_HTTP(HostResolverPrivate_Resolve)
[email protected]2baf7ace2012-06-22 18:51:20347TEST_PPAPI_NACL_VIA_HTTP(HostResolverPrivate_ResolveIPv4)
[email protected]f3ae866d2012-03-22 13:08:00348
[email protected]d4067422011-12-07 05:24:24349// URLLoader tests.
350TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_BasicGET)
351TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_BasicPOST)
352TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_BasicFilePOST)
353TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_BasicFileRangePOST)
354TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_CompoundBodyPOST)
355TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_EmptyDataPOST)
356TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_BinaryDataPOST)
357TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_CustomRequestHeader)
358TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_FailsBogusContentLength)
359TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_StreamToFile)
360TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_UntrustedSameOriginRestriction)
361TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_TrustedSameOriginRestriction)
362TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_UntrustedCrossOriginRequest)
363TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_TrustedCrossOriginRequest)
364TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_UntrustedJavascriptURLRestriction)
365// TODO(bbudge) Fix Javascript URLs for trusted loaders.
366// http://crbug.com/103062
[email protected]984aa49c2012-05-20 20:44:13367TEST_PPAPI_IN_PROCESS_VIA_HTTP(
368 DISABLED_URLLoader_TrustedJavascriptURLRestriction)
[email protected]2baf7ace2012-06-22 18:51:20369TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_UntrustedHttpRequests)
370TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_TrustedHttpRequests)
[email protected]c95b45792011-12-08 23:54:18371TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_FollowURLRedirect)
[email protected]d4067422011-12-07 05:24:24372TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_AuditURLRedirect)
373TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_AbortCalls)
374TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_UntendedLoad)
[email protected]94af0572012-01-17 22:10:14375TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_PrefetchBufferThreshold)
[email protected]d4067422011-12-07 05:24:24376
377TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_BasicGET)
378TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_BasicPOST)
[email protected]5667e122012-01-11 21:27:45379TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_BasicFilePOST)
380TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_BasicFileRangePOST)
[email protected]d4067422011-12-07 05:24:24381TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_CompoundBodyPOST)
382TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_EmptyDataPOST)
383TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_BinaryDataPOST)
384TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_CustomRequestHeader)
385TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_FailsBogusContentLength)
386TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_StreamToFile)
387TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_UntrustedSameOriginRestriction)
388TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_TrustedSameOriginRestriction)
389TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_UntrustedCrossOriginRequest)
390TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_TrustedCrossOriginRequest)
391TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_UntrustedJavascriptURLRestriction)
392// TODO(bbudge) Fix Javascript URLs for trusted loaders.
393// http://crbug.com/103062
394TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(
[email protected]984aa49c2012-05-20 20:44:13395 DISABLED_URLLoader_TrustedJavascriptURLRestriction)
[email protected]2baf7ace2012-06-22 18:51:20396TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_UntrustedHttpRequests)
397TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_TrustedHttpRequests)
[email protected]c95b45792011-12-08 23:54:18398TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_FollowURLRedirect)
[email protected]d4067422011-12-07 05:24:24399TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_AuditURLRedirect)
400TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_AbortCalls)
401TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_UntendedLoad)
402
403TEST_PPAPI_NACL_VIA_HTTP(URLLoader_BasicGET)
404TEST_PPAPI_NACL_VIA_HTTP(URLLoader_BasicPOST)
405TEST_PPAPI_NACL_VIA_HTTP(URLLoader_BasicFilePOST)
406TEST_PPAPI_NACL_VIA_HTTP(URLLoader_BasicFileRangePOST)
407TEST_PPAPI_NACL_VIA_HTTP(URLLoader_CompoundBodyPOST)
408TEST_PPAPI_NACL_VIA_HTTP(URLLoader_EmptyDataPOST)
409TEST_PPAPI_NACL_VIA_HTTP(URLLoader_BinaryDataPOST)
410TEST_PPAPI_NACL_VIA_HTTP(URLLoader_CustomRequestHeader)
411TEST_PPAPI_NACL_VIA_HTTP(URLLoader_FailsBogusContentLength)
412TEST_PPAPI_NACL_VIA_HTTP(URLLoader_StreamToFile)
[email protected]c95b45792011-12-08 23:54:18413TEST_PPAPI_NACL_VIA_HTTP(URLLoader_UntrustedSameOriginRestriction)
414TEST_PPAPI_NACL_VIA_HTTP(URLLoader_UntrustedCrossOriginRequest)
[email protected]d4067422011-12-07 05:24:24415TEST_PPAPI_NACL_VIA_HTTP(URLLoader_UntrustedJavascriptURLRestriction)
[email protected]2baf7ace2012-06-22 18:51:20416TEST_PPAPI_NACL_VIA_HTTP(URLLoader_UntrustedHttpRequests)
[email protected]c95b45792011-12-08 23:54:18417TEST_PPAPI_NACL_VIA_HTTP(URLLoader_FollowURLRedirect)
[email protected]d4067422011-12-07 05:24:24418TEST_PPAPI_NACL_VIA_HTTP(URLLoader_AuditURLRedirect)
419TEST_PPAPI_NACL_VIA_HTTP(URLLoader_AbortCalls)
420TEST_PPAPI_NACL_VIA_HTTP(URLLoader_UntendedLoad)
[email protected]1ff90a82011-11-22 21:51:49421
[email protected]a333c232012-01-27 23:14:27422// URLRequestInfo tests.
423TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_CreateAndIsURLRequestInfo)
424TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_CreateAndIsURLRequestInfo)
[email protected]8f3482ad2012-05-24 15:57:02425
426// Timing out on Windows. http://crbug.com/129571
427#if defined(OS_WIN)
428#define MAYBE_URLRequest_CreateAndIsURLRequestInfo \
429 FLAKY_URLRequest_CreateAndIsURLRequestInfo
430#else
431#define MAYBE_URLRequest_CreateAndIsURLRequestInfo \
432 URLRequest_CreateAndIsURLRequestInfo
433#endif
434TEST_PPAPI_NACL_VIA_HTTP(MAYBE_URLRequest_CreateAndIsURLRequestInfo)
435
[email protected]a333c232012-01-27 23:14:27436TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_SetProperty)
437TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_SetProperty)
438TEST_PPAPI_NACL_VIA_HTTP(URLRequest_SetProperty)
439TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_AppendDataToBody)
440TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_AppendDataToBody)
441TEST_PPAPI_NACL_VIA_HTTP(URLRequest_AppendDataToBody)
442TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_Stress)
443TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_Stress)
444TEST_PPAPI_NACL_VIA_HTTP(URLRequest_Stress)
445
[email protected]d8eba1a2011-07-20 21:41:55446TEST_PPAPI_IN_PROCESS(PaintAggregator)
[email protected]1ff90a82011-11-22 21:51:49447TEST_PPAPI_OUT_OF_PROCESS(PaintAggregator)
[email protected]cee34b72011-11-18 21:52:40448TEST_PPAPI_NACL_VIA_HTTP(PaintAggregator)
[email protected]2f0e64e2010-07-08 22:10:22449
[email protected]15fc79cc2012-02-22 23:27:52450// TODO(danakj): http://crbug.com/115286
[email protected]a69e82142012-02-22 16:47:28451TEST_PPAPI_IN_PROCESS(DISABLED_Scrollbar)
[email protected]c4d5960e52011-07-21 21:47:43452// http://crbug.com/89961
[email protected]984aa49c2012-05-20 20:44:13453IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, DISABLED_Scrollbar) {
[email protected]c4d5960e52011-07-21 21:47:43454 RunTest("Scrollbar");
455}
[email protected]15fc79cc2012-02-22 23:27:52456// TODO(danakj): http://crbug.com/115286
457TEST_PPAPI_NACL_VIA_HTTP(DISABLED_Scrollbar)
[email protected]39ef4342010-08-05 22:56:03458
[email protected]d8eba1a2011-07-20 21:41:55459TEST_PPAPI_IN_PROCESS(URLUtil)
[email protected]c4d5960e52011-07-21 21:47:43460TEST_PPAPI_OUT_OF_PROCESS(URLUtil)
[email protected]e1333fb2010-08-22 04:54:00461
[email protected]d8eba1a2011-07-20 21:41:55462TEST_PPAPI_IN_PROCESS(CharSet)
[email protected]c4d5960e52011-07-21 21:47:43463TEST_PPAPI_OUT_OF_PROCESS(CharSet)
[email protected]167b0dd12010-09-30 20:00:40464
[email protected]947bcaf2011-11-22 21:56:04465TEST_PPAPI_IN_PROCESS(Crypto)
[email protected]8e66338e2011-11-22 21:57:17466TEST_PPAPI_OUT_OF_PROCESS(Crypto)
[email protected]8d770e492011-10-11 04:54:31467
[email protected]d8eba1a2011-07-20 21:41:55468TEST_PPAPI_IN_PROCESS(Var)
[email protected]608fcb92011-12-02 20:44:59469TEST_PPAPI_OUT_OF_PROCESS(Var)
[email protected]cee34b72011-11-18 21:52:40470TEST_PPAPI_NACL_VIA_HTTP(Var)
[email protected]0925622c2011-06-08 20:22:02471
[email protected]d560c6f52012-03-30 15:08:57472// Flaky on mac, http://crbug.com/121107
473#if defined(OS_MACOSX)
474#define MAYBE_VarDeprecated DISABLED_VarDeprecated
475#else
476#define MAYBE_VarDeprecated VarDeprecated
477#endif
478
[email protected]d8eba1a2011-07-20 21:41:55479TEST_PPAPI_IN_PROCESS(VarDeprecated)
[email protected]d560c6f52012-03-30 15:08:57480TEST_PPAPI_OUT_OF_PROCESS(MAYBE_VarDeprecated)
[email protected]3ed09692010-11-13 00:28:17481
[email protected]b20df1c2011-08-03 14:38:24482// Windows defines 'PostMessage', so we have to undef it.
483#ifdef PostMessage
484#undef PostMessage
485#endif
[email protected]2622d6b2011-11-16 04:28:02486TEST_PPAPI_IN_PROCESS(PostMessage_SendInInit)
487TEST_PPAPI_IN_PROCESS(PostMessage_SendingData)
[email protected]15fc79cc2012-02-22 23:27:52488// TODO(danakj): http://crbug.com/115286
489TEST_PPAPI_IN_PROCESS(DISABLED_PostMessage_SendingArrayBuffer)
[email protected]2622d6b2011-11-16 04:28:02490TEST_PPAPI_IN_PROCESS(PostMessage_MessageEvent)
491TEST_PPAPI_IN_PROCESS(PostMessage_NoHandler)
492TEST_PPAPI_IN_PROCESS(PostMessage_ExtraParam)
493TEST_PPAPI_OUT_OF_PROCESS(PostMessage_SendInInit)
494TEST_PPAPI_OUT_OF_PROCESS(PostMessage_SendingData)
[email protected]10305deb2012-02-16 19:39:22495TEST_PPAPI_OUT_OF_PROCESS(PostMessage_SendingArrayBuffer)
[email protected]2622d6b2011-11-16 04:28:02496TEST_PPAPI_OUT_OF_PROCESS(PostMessage_MessageEvent)
497TEST_PPAPI_OUT_OF_PROCESS(PostMessage_NoHandler)
498TEST_PPAPI_OUT_OF_PROCESS(PostMessage_ExtraParam)
[email protected]d6783d5ac2012-03-29 23:27:57499#if !defined(OS_WIN) && !(defined(OS_LINUX) && defined(ARCH_CPU_64_BITS))
500// Times out on Windows XP, Windows 7, and Linux x64: http://crbug.com/95557
[email protected]2622d6b2011-11-16 04:28:02501TEST_PPAPI_OUT_OF_PROCESS(PostMessage_NonMainThread)
[email protected]924071b2012-02-10 01:54:07502#endif
[email protected]08610102011-12-17 14:24:30503TEST_PPAPI_NACL_VIA_HTTP(PostMessage_SendInInit)
504TEST_PPAPI_NACL_VIA_HTTP(PostMessage_SendingData)
[email protected]2048666c2012-03-11 05:38:34505TEST_PPAPI_NACL_VIA_HTTP(SLOW_PostMessage_SendingArrayBuffer)
[email protected]08610102011-12-17 14:24:30506TEST_PPAPI_NACL_VIA_HTTP(PostMessage_MessageEvent)
507TEST_PPAPI_NACL_VIA_HTTP(PostMessage_NoHandler)
[email protected]396e3fd2012-02-09 18:46:10508
[email protected]976976e12012-01-24 20:08:08509#if defined(OS_WIN)
510// Flaky: http://crbug.com/111209
511//
512// Note from sheriffs miket and syzm: we're not convinced that this test is
513// directly to blame for the flakiness. It's possible that it's a more general
514// problem that is exposing itself only with one of the later tests in this
515// series.
[email protected]0caf2302012-02-14 21:35:25516TEST_PPAPI_NACL_VIA_HTTP(DISABLED_PostMessage_ExtraParam)
[email protected]976976e12012-01-24 20:08:08517#else
[email protected]08610102011-12-17 14:24:30518TEST_PPAPI_NACL_VIA_HTTP(PostMessage_ExtraParam)
[email protected]976976e12012-01-24 20:08:08519#endif
[email protected]f1ced922011-03-26 20:56:35520
[email protected]d8eba1a2011-07-20 21:41:55521TEST_PPAPI_IN_PROCESS(Memory)
522TEST_PPAPI_OUT_OF_PROCESS(Memory)
[email protected]cee34b72011-11-18 21:52:40523TEST_PPAPI_NACL_VIA_HTTP(Memory)
[email protected]14710e222011-07-05 21:37:00524
[email protected]7ace8ad2011-08-06 03:23:58525TEST_PPAPI_IN_PROCESS(VideoDecoder)
526TEST_PPAPI_OUT_OF_PROCESS(VideoDecoder)
527
[email protected]d4067422011-12-07 05:24:24528TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileIO_Open)
529TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileIO_AbortCalls)
530TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileIO_ParallelReads)
531TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileIO_ParallelWrites)
532TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileIO_NotAllowMixedReadWrite)
[email protected]2aa1e262012-10-25 08:30:08533TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileIO_ReadWriteSetLength)
[email protected]bcc801f2012-11-16 07:41:09534TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileIO_ReadToArrayWriteSetLength)
[email protected]85fa2e52012-10-18 03:17:16535TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileIO_TouchQuery)
[email protected]2aa1e262012-10-25 08:30:08536TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileIO_WillWriteWillSetLength)
[email protected]d4067422011-12-07 05:24:24537
[email protected]694878de2011-12-21 20:22:14538TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileIO_Open)
539TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileIO_AbortCalls)
540TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileIO_ParallelReads)
541TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileIO_ParallelWrites)
542TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileIO_NotAllowMixedReadWrite)
[email protected]2aa1e262012-10-25 08:30:08543TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileIO_ReadWriteSetLength)
[email protected]bcc801f2012-11-16 07:41:09544TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileIO_ReadToArrayWriteSetLength)
[email protected]85fa2e52012-10-18 03:17:16545TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileIO_TouchQuery)
[email protected]2aa1e262012-10-25 08:30:08546TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileIO_WillWriteWillSetLength)
[email protected]d4067422011-12-07 05:24:24547
[email protected]8049bb82012-11-09 01:29:22548// PPAPINaclTest.FileIO_ParallelReads is flaky on Mac and Windows.
549// http://crbug.com/121104
550#if defined(OS_MACOSX) || defined(OS_WIN)
[email protected]71e270e2012-03-30 14:52:49551#define MAYBE_FileIO_ParallelReads DISABLED_FileIO_ParallelReads
552#else
553#define MAYBE_FileIO_ParallelReads FileIO_ParallelReads
554#endif
555
[email protected]401b5c52012-05-30 19:37:39556// PPAPINaclTest.FileIO_TouchQuery is flaky on Windows. http://crbug.com/130349
557#if defined(OS_WIN)
558#define MAYBE_NACL_FileIO_TouchQuery DISABLED_FileIO_TouchQuery
559#else
[email protected]85fa2e52012-10-18 03:17:16560#define MAYBE_NACL_FileIO_TouchQuery FileIO_TouchQuery
[email protected]401b5c52012-05-30 19:37:39561#endif
562
[email protected]4088c592012-11-08 20:37:54563// PPAPINaclTest.FileIO_AbortCalls is often flaky on Windows.
[email protected]c57254f2012-11-08 17:04:54564// http://crbug.com/160034
[email protected]4088c592012-11-08 20:37:54565#if defined(OS_WIN)
566#define MAYBE_FileIO_AbortCalls DISABLED_FileIO_AbortCalls
567#else
568#define MAYBE_FileIO_AbortCalls FileIO_AbortCalls
569#endif
570
571TEST_PPAPI_NACL_VIA_HTTP(FileIO_Open)
572TEST_PPAPI_NACL_VIA_HTTP(MAYBE_FileIO_AbortCalls)
[email protected]71e270e2012-03-30 14:52:49573TEST_PPAPI_NACL_VIA_HTTP(MAYBE_FileIO_ParallelReads)
[email protected]d4067422011-12-07 05:24:24574TEST_PPAPI_NACL_VIA_HTTP(FileIO_ParallelWrites)
[email protected]7f302322012-06-25 23:52:44575TEST_PPAPI_NACL_VIA_HTTP(FileIO_NotAllowMixedReadWrite)
[email protected]401b5c52012-05-30 19:37:39576TEST_PPAPI_NACL_VIA_HTTP(MAYBE_NACL_FileIO_TouchQuery)
[email protected]2aa1e262012-10-25 08:30:08577TEST_PPAPI_NACL_VIA_HTTP(FileIO_ReadWriteSetLength)
[email protected]bcc801f2012-11-16 07:41:09578TEST_PPAPI_NACL_VIA_HTTP(FileIO_ReadToArrayWriteSetLength)
[email protected]d4067422011-12-07 05:24:24579// The following test requires PPB_FileIO_Trusted, not available in NaCl.
580TEST_PPAPI_NACL_VIA_HTTP(DISABLED_FileIO_WillWriteWillSetLength)
[email protected]3ed09692010-11-13 00:28:17581
[email protected]d8eba1a2011-07-20 21:41:55582TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileRef)
[email protected]cc6db922011-12-10 16:54:22583TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileRef)
[email protected]cee34b72011-11-18 21:52:40584TEST_PPAPI_NACL_VIA_HTTP(FileRef)
585
[email protected]c4d5960e52011-07-21 21:47:43586TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileSystem)
[email protected]0fe6c2422011-09-07 20:20:41587TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileSystem)
[email protected]ba0adf02012-05-30 21:00:41588
589// PPAPINaClTest.FileSystem times out consistently on Windows and Mac.
590// http://crbug.com/130372
591#if defined(OS_MACOSX) || defined(OS_WIN)
592#define MAYBE_FileSystem DISABLED_FileSystem
593#else
594#define MAYBE_FileSystem FileSystem
595#endif
596
597TEST_PPAPI_NACL_VIA_HTTP(MAYBE_FileSystem)
[email protected]3ed09692010-11-13 00:28:17598
[email protected]46391872012-08-19 20:12:25599#if defined(OS_MACOSX)
600// http://crbug.com/103912
601#define MAYBE_Fullscreen DISABLED_Fullscreen
[email protected]e31440852012-08-31 22:59:04602#elif defined(OS_LINUX)
603// http://crbug.com/146008
604#define MAYBE_Fullscreen DISABLED_Fullscreen
[email protected]46391872012-08-19 20:12:25605#else
606#define MAYBE_Fullscreen Fullscreen
607#endif
608
609TEST_PPAPI_IN_PROCESS_VIA_HTTP(MAYBE_Fullscreen)
610TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(MAYBE_Fullscreen)
611TEST_PPAPI_NACL_VIA_HTTP(MAYBE_Fullscreen)
[email protected]6d54e2ed2011-09-15 23:02:04612
[email protected]de2895262012-04-04 17:15:48613TEST_PPAPI_IN_PROCESS(X509CertificatePrivate)
614TEST_PPAPI_OUT_OF_PROCESS(X509CertificatePrivate)
615
[email protected]0caf2302012-02-14 21:35:25616// http://crbug.com/63239
[email protected]35f05982011-06-09 20:38:01617#if defined(OS_POSIX)
[email protected]0caf2302012-02-14 21:35:25618#define MAYBE_DirectoryReader DISABLED_DirectoryReader
[email protected]09283b72011-06-01 16:04:29619#else
620#define MAYBE_DirectoryReader DirectoryReader
621#endif
622
[email protected]35f05982011-06-09 20:38:01623// Flaky on Mac + Linux, maybe http://codereview.chromium.org/7094008
[email protected]a367e282011-12-02 19:13:25624// Not implemented out of process: http://crbug.com/106129
[email protected]f237c0f2012-03-10 07:49:10625IN_PROC_BROWSER_TEST_F(PPAPITest, MAYBE_DirectoryReader) {
[email protected]3ed09692010-11-13 00:28:17626 RunTestViaHTTP("DirectoryReader");
627}
[email protected]9b4cb192011-02-16 00:17:22628
[email protected]02ab09c32011-11-29 18:59:44629// There is no proxy. This is used for PDF metrics reporting, and PDF only
630// runs in process, so there's currently no need for a proxy.
[email protected]31050482011-07-22 17:03:19631TEST_PPAPI_IN_PROCESS(UMA)
[email protected]87f36372011-11-11 20:49:01632
[email protected]ba359352011-11-22 00:24:13633TEST_PPAPI_IN_PROCESS(NetAddressPrivate_AreEqual)
634TEST_PPAPI_IN_PROCESS(NetAddressPrivate_AreHostsEqual)
635TEST_PPAPI_IN_PROCESS(NetAddressPrivate_Describe)
636TEST_PPAPI_IN_PROCESS(NetAddressPrivate_ReplacePort)
637TEST_PPAPI_IN_PROCESS(NetAddressPrivate_GetAnyAddress)
638TEST_PPAPI_IN_PROCESS(NetAddressPrivate_DescribeIPv6)
[email protected]ee9bdfce2012-02-09 00:04:09639TEST_PPAPI_IN_PROCESS(NetAddressPrivate_GetFamily)
640TEST_PPAPI_IN_PROCESS(NetAddressPrivate_GetPort)
641TEST_PPAPI_IN_PROCESS(NetAddressPrivate_GetAddress)
[email protected]b13deef82012-03-22 22:41:06642TEST_PPAPI_IN_PROCESS(NetAddressPrivate_GetScopeID)
[email protected]ba359352011-11-22 00:24:13643TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate_AreEqual)
644TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate_AreHostsEqual)
645TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate_Describe)
646TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate_ReplacePort)
647TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate_GetAnyAddress)
648TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate_DescribeIPv6)
[email protected]ee9bdfce2012-02-09 00:04:09649TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate_GetFamily)
650TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate_GetPort)
651TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate_GetAddress)
[email protected]b13deef82012-03-22 22:41:06652TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate_GetScopeID)
[email protected]cfff9eb82011-11-15 03:17:10653
[email protected]9e855c0a2012-01-18 13:36:55654TEST_PPAPI_NACL_VIA_HTTP(NetAddressPrivateUntrusted_AreEqual)
655TEST_PPAPI_NACL_VIA_HTTP(NetAddressPrivateUntrusted_AreHostsEqual)
[email protected]26c24912012-11-09 00:26:30656TEST_PPAPI_NACL_VIA_HTTP(NetAddressPrivateUntrusted_Describe)
657TEST_PPAPI_NACL_VIA_HTTP(NetAddressPrivateUntrusted_ReplacePort)
[email protected]9e855c0a2012-01-18 13:36:55658TEST_PPAPI_NACL_VIA_HTTP(NetAddressPrivateUntrusted_GetAnyAddress)
[email protected]26c24912012-11-09 00:26:30659TEST_PPAPI_NACL_VIA_HTTP(NetAddressPrivateUntrusted_GetFamily)
660TEST_PPAPI_NACL_VIA_HTTP(NetAddressPrivateUntrusted_GetPort)
[email protected]ee9bdfce2012-02-09 00:04:09661TEST_PPAPI_NACL_VIA_HTTP(NetAddressPrivateUntrusted_GetAddress)
[email protected]9e855c0a2012-01-18 13:36:55662
[email protected]2e80d05482012-03-13 00:10:41663TEST_PPAPI_IN_PROCESS(NetworkMonitorPrivate_Basic)
664TEST_PPAPI_IN_PROCESS(NetworkMonitorPrivate_2Monitors)
[email protected]5b9b80e2012-03-20 20:19:39665TEST_PPAPI_IN_PROCESS(NetworkMonitorPrivate_DeleteInCallback)
[email protected]39832802012-03-21 18:55:08666TEST_PPAPI_IN_PROCESS(NetworkMonitorPrivate_ListObserver)
[email protected]f64d3d12012-08-10 00:03:15667TEST_PPAPI_OUT_OF_PROCESS(NetworkMonitorPrivate_Basic)
668TEST_PPAPI_OUT_OF_PROCESS(NetworkMonitorPrivate_2Monitors)
669TEST_PPAPI_OUT_OF_PROCESS(NetworkMonitorPrivate_DeleteInCallback)
[email protected]39832802012-03-21 18:55:08670TEST_PPAPI_OUT_OF_PROCESS(NetworkMonitorPrivate_ListObserver)
[email protected]f64d3d12012-08-10 00:03:15671TEST_PPAPI_NACL_VIA_HTTP(NetworkMonitorPrivate_Basic)
672TEST_PPAPI_NACL_VIA_HTTP(NetworkMonitorPrivate_2Monitors)
673TEST_PPAPI_NACL_VIA_HTTP(NetworkMonitorPrivate_DeleteInCallback)
674TEST_PPAPI_NACL_VIA_HTTP(NetworkMonitorPrivate_ListObserver)
[email protected]2e80d05482012-03-13 00:10:41675
[email protected]d67f5ae2011-11-17 22:41:52676TEST_PPAPI_IN_PROCESS(Flash_SetInstanceAlwaysOnTop)
[email protected]d67f5ae2011-11-17 22:41:52677TEST_PPAPI_IN_PROCESS(Flash_GetLocalTimeZoneOffset)
678TEST_PPAPI_IN_PROCESS(Flash_GetCommandLineArgs)
[email protected]e36cd042012-06-18 18:49:03679TEST_PPAPI_IN_PROCESS(Flash_GetSetting)
[email protected]d67f5ae2011-11-17 22:41:52680TEST_PPAPI_OUT_OF_PROCESS(Flash_SetInstanceAlwaysOnTop)
[email protected]d67f5ae2011-11-17 22:41:52681TEST_PPAPI_OUT_OF_PROCESS(Flash_GetLocalTimeZoneOffset)
682TEST_PPAPI_OUT_OF_PROCESS(Flash_GetCommandLineArgs)
[email protected]e36cd042012-06-18 18:49:03683TEST_PPAPI_OUT_OF_PROCESS(Flash_GetSetting)
[email protected]081d147b2011-11-18 05:51:54684
[email protected]45a9c0a2012-11-08 21:00:29685// NaCl based PPAPI tests with WebSocket server
[email protected]081d147b2011-11-18 05:51:54686TEST_PPAPI_IN_PROCESS(WebSocket_IsWebSocket)
[email protected]a1cff782011-12-06 18:06:34687TEST_PPAPI_IN_PROCESS(WebSocket_UninitializedPropertiesAccess)
[email protected]65f6b002011-12-01 07:44:11688TEST_PPAPI_IN_PROCESS(WebSocket_InvalidConnect)
[email protected]32b05b12011-12-09 04:26:28689TEST_PPAPI_IN_PROCESS(WebSocket_Protocols)
[email protected]65f6b002011-12-01 07:44:11690TEST_PPAPI_IN_PROCESS(WebSocket_GetURL)
[email protected]2e4b7ab2012-01-25 13:28:07691TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_ValidConnect)
692TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_InvalidClose)
693TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_ValidClose)
694TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_GetProtocol)
695TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_TextSendReceive)
696TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_BinarySendReceive)
[email protected]3f915fae2012-03-26 11:13:29697TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_StressedSendReceive)
[email protected]2e4b7ab2012-01-25 13:28:07698TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_BufferedAmount)
[email protected]2f3cf602012-10-22 07:59:31699TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_AbortCallsWithCallback)
700TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_AbortSendMessageCall)
701TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_AbortCloseCall)
[email protected]172389962012-12-12 13:09:20702TEST_PPAPI_IN_PROCESS_WITH_WS(MAYBE_WebSocket_AbortReceiveMessageCall)
[email protected]3f915fae2012-03-26 11:13:29703TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_CcInterfaces)
[email protected]2785cb92012-02-29 20:22:09704TEST_PPAPI_IN_PROCESS(WebSocket_UtilityInvalidConnect)
705TEST_PPAPI_IN_PROCESS(WebSocket_UtilityProtocols)
706TEST_PPAPI_IN_PROCESS(WebSocket_UtilityGetURL)
707TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_UtilityValidConnect)
708TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_UtilityInvalidClose)
709TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_UtilityValidClose)
[email protected]362f91ba2012-06-11 19:36:41710TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_UtilityGetProtocol)
[email protected]2785cb92012-02-29 20:22:09711TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_UtilityTextSendReceive)
712TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_UtilityBinarySendReceive)
713TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_UtilityBufferedAmount)
[email protected]9d5eadf2012-10-09 03:43:48714TEST_PPAPI_OUT_OF_PROCESS(WebSocket_IsWebSocket)
715TEST_PPAPI_OUT_OF_PROCESS(WebSocket_UninitializedPropertiesAccess)
716TEST_PPAPI_OUT_OF_PROCESS(WebSocket_InvalidConnect)
717TEST_PPAPI_OUT_OF_PROCESS(WebSocket_Protocols)
718TEST_PPAPI_OUT_OF_PROCESS(WebSocket_GetURL)
719TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(WebSocket_ValidConnect)
720TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(WebSocket_InvalidClose)
721TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(WebSocket_ValidClose)
722TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(WebSocket_GetProtocol)
723TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(WebSocket_TextSendReceive)
724TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(WebSocket_BinarySendReceive)
725TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(WebSocket_StressedSendReceive)
726TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(WebSocket_BufferedAmount)
[email protected]2f3cf602012-10-22 07:59:31727TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(WebSocket_AbortCallsWithCallback)
728TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(WebSocket_AbortSendMessageCall)
729TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(WebSocket_AbortCloseCall)
[email protected]172389962012-12-12 13:09:20730TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(MAYBE_WebSocket_AbortReceiveMessageCall)
[email protected]9d5eadf2012-10-09 03:43:48731TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(WebSocket_CcInterfaces)
732TEST_PPAPI_OUT_OF_PROCESS(WebSocket_UtilityInvalidConnect)
733TEST_PPAPI_OUT_OF_PROCESS(WebSocket_UtilityProtocols)
734TEST_PPAPI_OUT_OF_PROCESS(WebSocket_UtilityGetURL)
735TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(WebSocket_UtilityValidConnect)
736TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(WebSocket_UtilityInvalidClose)
737TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(WebSocket_UtilityValidClose)
738TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(WebSocket_UtilityGetProtocol)
739TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(WebSocket_UtilityTextSendReceive)
740TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(WebSocket_UtilityBinarySendReceive)
741TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(WebSocket_UtilityBufferedAmount)
[email protected]9082aa5b2012-01-19 08:44:47742TEST_PPAPI_NACL_VIA_HTTP(WebSocket_IsWebSocket)
[email protected]362f91ba2012-06-11 19:36:41743TEST_PPAPI_NACL_VIA_HTTP(WebSocket_UninitializedPropertiesAccess)
[email protected]9082aa5b2012-01-19 08:44:47744TEST_PPAPI_NACL_VIA_HTTP(WebSocket_InvalidConnect)
745TEST_PPAPI_NACL_VIA_HTTP(WebSocket_Protocols)
746TEST_PPAPI_NACL_VIA_HTTP(WebSocket_GetURL)
[email protected]2e4b7ab2012-01-25 13:28:07747TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_ValidConnect)
[email protected]76e6df02012-11-09 01:43:07748TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_InvalidClose)
749TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_ValidClose)
[email protected]2e4b7ab2012-01-25 13:28:07750TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_GetProtocol)
751TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_TextSendReceive)
752TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_BinarySendReceive)
[email protected]3f915fae2012-03-26 11:13:29753TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_StressedSendReceive)
[email protected]76e6df02012-11-09 01:43:07754TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_BufferedAmount)
755TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_AbortCallsWithCallback)
[email protected]2f3cf602012-10-22 07:59:31756TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_AbortSendMessageCall)
[email protected]76e6df02012-11-09 01:43:07757TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_AbortCloseCall)
[email protected]172389962012-12-12 13:09:20758TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(MAYBE_WebSocket_AbortReceiveMessageCall)
[email protected]76e6df02012-11-09 01:43:07759TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_CcInterfaces)
[email protected]2785cb92012-02-29 20:22:09760TEST_PPAPI_NACL_VIA_HTTP(WebSocket_UtilityInvalidConnect)
761TEST_PPAPI_NACL_VIA_HTTP(WebSocket_UtilityProtocols)
762TEST_PPAPI_NACL_VIA_HTTP(WebSocket_UtilityGetURL)
763TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_UtilityValidConnect)
764TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_UtilityInvalidClose)
[email protected]76e6df02012-11-09 01:43:07765TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_UtilityValidClose)
[email protected]2785cb92012-02-29 20:22:09766TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_UtilityGetProtocol)
767TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_UtilityTextSendReceive)
768TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_UtilityBinarySendReceive)
[email protected]76e6df02012-11-09 01:43:07769TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_UtilityBufferedAmount)
[email protected]a9d504a2011-11-22 22:46:47770
[email protected]10f0ec52012-06-19 00:01:19771TEST_PPAPI_IN_PROCESS(AudioConfig_RecommendSampleRate)
[email protected]c3d06212011-12-01 00:40:52772TEST_PPAPI_IN_PROCESS(AudioConfig_ValidConfigs)
773TEST_PPAPI_IN_PROCESS(AudioConfig_InvalidConfigs)
[email protected]10f0ec52012-06-19 00:01:19774TEST_PPAPI_OUT_OF_PROCESS(AudioConfig_RecommendSampleRate)
[email protected]c3d06212011-12-01 00:40:52775TEST_PPAPI_OUT_OF_PROCESS(AudioConfig_ValidConfigs)
776TEST_PPAPI_OUT_OF_PROCESS(AudioConfig_InvalidConfigs)
[email protected]46c9a052012-06-27 19:27:26777TEST_PPAPI_NACL_VIA_HTTP(AudioConfig_RecommendSampleRate)
778TEST_PPAPI_NACL_VIA_HTTP(AudioConfig_ValidConfigs)
779TEST_PPAPI_NACL_VIA_HTTP(AudioConfig_InvalidConfigs)
[email protected]65bc60362011-11-30 06:20:37780
[email protected]cd019be2012-05-15 23:23:48781// Only run audio output tests if we have an audio device available.
782// TODO(raymes): We should probably test scenarios where there is no audio
783// device available.
784TEST_PPAPI_IN_PROCESS_WITH_AUDIO_OUTPUT(Audio_Creation)
785TEST_PPAPI_IN_PROCESS_WITH_AUDIO_OUTPUT(Audio_DestroyNoStop)
786TEST_PPAPI_IN_PROCESS_WITH_AUDIO_OUTPUT(Audio_Failures)
787TEST_PPAPI_IN_PROCESS_WITH_AUDIO_OUTPUT(Audio_AudioCallback1)
788TEST_PPAPI_IN_PROCESS_WITH_AUDIO_OUTPUT(Audio_AudioCallback2)
789TEST_PPAPI_OUT_OF_PROCESS_WITH_AUDIO_OUTPUT(Audio_Creation)
790TEST_PPAPI_OUT_OF_PROCESS_WITH_AUDIO_OUTPUT(Audio_DestroyNoStop)
791TEST_PPAPI_OUT_OF_PROCESS_WITH_AUDIO_OUTPUT(Audio_Failures)
792TEST_PPAPI_OUT_OF_PROCESS_WITH_AUDIO_OUTPUT(Audio_AudioCallback1)
793TEST_PPAPI_OUT_OF_PROCESS_WITH_AUDIO_OUTPUT(Audio_AudioCallback2)
794TEST_PPAPI_NACL_VIA_HTTP_WITH_AUDIO_OUTPUT(Audio_Creation)
795TEST_PPAPI_NACL_VIA_HTTP_WITH_AUDIO_OUTPUT(Audio_DestroyNoStop)
796TEST_PPAPI_NACL_VIA_HTTP_WITH_AUDIO_OUTPUT(Audio_Failures)
797TEST_PPAPI_NACL_VIA_HTTP_WITH_AUDIO_OUTPUT(Audio_AudioCallback1)
798TEST_PPAPI_NACL_VIA_HTTP_WITH_AUDIO_OUTPUT(Audio_AudioCallback2)
[email protected]c6b2b7f2011-12-01 02:38:25799
[email protected]2baf7ace2012-06-22 18:51:20800TEST_PPAPI_IN_PROCESS(View_CreatedVisible);
801TEST_PPAPI_OUT_OF_PROCESS(View_CreatedVisible);
802TEST_PPAPI_NACL_VIA_HTTP(View_CreatedVisible);
[email protected]09c37ba2012-01-05 18:00:33803// This test ensures that plugins created in a background tab have their
804// initial visibility set to false. We don't bother testing in-process for this
805// custom test since the out of process code also exercises in-process.
[email protected]f237c0f2012-03-10 07:49:10806
807IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, View_CreateInvisible) {
[email protected]09c37ba2012-01-05 18:00:33808 // Make a second tab in the foreground.
[email protected]09c37ba2012-01-05 18:00:33809 GURL url = GetTestFileUrl("View_CreatedInvisible");
[email protected]78e2edc2012-07-01 23:32:28810 chrome::NavigateParams params(browser(), url, content::PAGE_TRANSITION_LINK);
[email protected]f237c0f2012-03-10 07:49:10811 params.disposition = NEW_BACKGROUND_TAB;
812 ui_test_utils::NavigateToURL(&params);
[email protected]09c37ba2012-01-05 18:00:33813}
[email protected]63179902012-03-09 23:47:28814
[email protected]f237c0f2012-03-10 07:49:10815// This test messes with tab visibility so is custom.
816IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, View_PageHideShow) {
817 // The plugin will be loaded in the foreground tab and will send us a message.
[email protected]b0347b32012-08-22 22:52:16818 PPAPITestMessageHandler handler;
819 JavascriptTestObserver observer(
[email protected]57892182012-12-03 19:15:39820 browser()->tab_strip_model()->GetActiveWebContents()->GetRenderViewHost(),
[email protected]b0347b32012-08-22 22:52:16821 &handler);
[email protected]f237c0f2012-03-10 07:49:10822
823 GURL url = GetTestFileUrl("View_PageHideShow");
824 ui_test_utils::NavigateToURL(browser(), url);
825
[email protected]b0347b32012-08-22 22:52:16826 ASSERT_TRUE(observer.Run()) << handler.error_message();
827 EXPECT_STREQ("TestPageHideShow:Created", handler.message().c_str());
[email protected]f237c0f2012-03-10 07:49:10828 observer.Reset();
[email protected]09c37ba2012-01-05 18:00:33829
830 // Make a new tab to cause the original one to hide, this should trigger the
831 // next phase of the test.
[email protected]78e2edc2012-07-01 23:32:28832 chrome::NavigateParams params(browser(), GURL(chrome::kAboutBlankURL),
833 content::PAGE_TRANSITION_LINK);
[email protected]f237c0f2012-03-10 07:49:10834 params.disposition = NEW_FOREGROUND_TAB;
835 ui_test_utils::NavigateToURL(&params);
[email protected]09c37ba2012-01-05 18:00:33836
837 // Wait until the test acks that it got hidden.
[email protected]b0347b32012-08-22 22:52:16838 ASSERT_TRUE(observer.Run()) << handler.error_message();
839 EXPECT_STREQ("TestPageHideShow:Hidden", handler.message().c_str());
[email protected]f237c0f2012-03-10 07:49:10840 observer.Reset();
841
842 // Switch back to the test tab.
[email protected]57892182012-12-03 19:15:39843 browser()->tab_strip_model()->ActivateTabAt(0, true);
[email protected]f237c0f2012-03-10 07:49:10844
[email protected]b0347b32012-08-22 22:52:16845 ASSERT_TRUE(observer.Run()) << handler.error_message();
846 EXPECT_STREQ("PASS", handler.message().c_str());
[email protected]09c37ba2012-01-05 18:00:33847}
[email protected]f237c0f2012-03-10 07:49:10848
[email protected]5b8f977d2012-06-28 21:19:37849// Tests that if a plugin accepts touch events, the browser knows to send touch
850// events to the renderer.
851IN_PROC_BROWSER_TEST_F(PPAPITest, InputEvent_AcceptTouchEvent) {
852 std::string positive_tests[] = { "InputEvent_AcceptTouchEvent_1",
[email protected]3dc1f212012-11-28 23:47:27853 "InputEvent_AcceptTouchEvent_2",
[email protected]5b8f977d2012-06-28 21:19:37854 "InputEvent_AcceptTouchEvent_3",
855 "InputEvent_AcceptTouchEvent_4"
856 };
857
858 for (size_t i = 0; i < arraysize(positive_tests); ++i) {
[email protected]57892182012-12-03 19:15:39859 RenderViewHost* host = browser()->tab_strip_model()->
860 GetActiveWebContents()->GetRenderViewHost();
[email protected]5b8f977d2012-06-28 21:19:37861 RunTest(positive_tests[i]);
862 EXPECT_TRUE(content::RenderViewHostTester::HasTouchEventHandler(host));
863 }
[email protected]5b8f977d2012-06-28 21:19:37864}
865
[email protected]09c37ba2012-01-05 18:00:33866TEST_PPAPI_IN_PROCESS(View_SizeChange);
867TEST_PPAPI_OUT_OF_PROCESS(View_SizeChange);
868TEST_PPAPI_NACL_VIA_HTTP(View_SizeChange);
869TEST_PPAPI_IN_PROCESS(View_ClipChange);
870TEST_PPAPI_OUT_OF_PROCESS(View_ClipChange);
871TEST_PPAPI_NACL_VIA_HTTP(View_ClipChange);
872
[email protected]6117b82da2012-01-07 00:51:01873TEST_PPAPI_IN_PROCESS(ResourceArray_Basics)
874TEST_PPAPI_IN_PROCESS(ResourceArray_OutOfRangeAccess)
875TEST_PPAPI_IN_PROCESS(ResourceArray_EmptyArray)
876TEST_PPAPI_IN_PROCESS(ResourceArray_InvalidElement)
877TEST_PPAPI_OUT_OF_PROCESS(ResourceArray_Basics)
878TEST_PPAPI_OUT_OF_PROCESS(ResourceArray_OutOfRangeAccess)
879TEST_PPAPI_OUT_OF_PROCESS(ResourceArray_EmptyArray)
880TEST_PPAPI_OUT_OF_PROCESS(ResourceArray_InvalidElement)
881
[email protected]cd2af392012-01-31 09:19:17882TEST_PPAPI_IN_PROCESS(FlashMessageLoop_Basics)
883TEST_PPAPI_IN_PROCESS(FlashMessageLoop_RunWithoutQuit)
884TEST_PPAPI_OUT_OF_PROCESS(FlashMessageLoop_Basics)
885TEST_PPAPI_OUT_OF_PROCESS(FlashMessageLoop_RunWithoutQuit)
886
[email protected]33ec50562012-04-08 20:28:43887TEST_PPAPI_IN_PROCESS(MouseCursor)
888TEST_PPAPI_OUT_OF_PROCESS(MouseCursor)
889TEST_PPAPI_NACL_VIA_HTTP(MouseCursor)
890
[email protected]234c1392012-09-27 23:30:41891// PPB_Printing only implemented for out of process.
892TEST_PPAPI_OUT_OF_PROCESS(Printing)
893
[email protected]6de743a2012-08-30 20:03:22894// PPB_MessageLoop is only supported out-of-process.
895// TODO(dmichael): Enable for NaCl with the IPC proxy. crbug.com/116317
896TEST_PPAPI_OUT_OF_PROCESS(MessageLoop_Basics)
897// Note to sheriffs: MessageLoop_Post starts a thread, which has a history of
898// slowness, particularly on Windows XP. If this test times out, please try
899// marking it SLOW_ before disabling.
900// - dmichael
[email protected]97f79ec02012-09-06 22:03:27901// MessageLoop_Post starts a thread so only run it if pepper threads are
902// enabled.
903#ifdef ENABLE_PEPPER_THREADING
[email protected]6de743a2012-08-30 20:03:22904TEST_PPAPI_OUT_OF_PROCESS(MessageLoop_Post)
[email protected]97f79ec02012-09-06 22:03:27905#endif
[email protected]6de743a2012-08-30 20:03:22906
[email protected]a1686e272012-11-01 23:39:34907// Going forward, Flash APIs will only work out-of-process.
[email protected]a9f2a6212012-12-04 08:47:34908TEST_PPAPI_OUT_OF_PROCESS(Flash_GetProxyForURL)
[email protected]0c92b0d2012-12-08 00:46:23909TEST_PPAPI_OUT_OF_PROCESS(Flash_SetCrashData)
[email protected]a1686e272012-11-01 23:39:34910TEST_PPAPI_OUT_OF_PROCESS(FlashClipboard)
[email protected]0c92b0d2012-12-08 00:46:23911TEST_PPAPI_OUT_OF_PROCESS(FlashFile)
[email protected]22fdaa62012-11-30 01:55:44912// Mac/Aura reach NOTIMPLEMENTED/time out.
913// mac: http://crbug.com/96767
914// aura: http://crbug.com/104384
915#if defined(OS_MACOSX) || defined(USE_AURA)
916#define MAYBE_FlashFullscreen DISABLED_FlashFullscreen
917#else
918#define MAYBE_FlashFullscreen FlashFullscreen
919#endif
920TEST_PPAPI_OUT_OF_PROCESS(MAYBE_FlashFullscreen)
[email protected]481a4b72012-06-15 22:56:53921
[email protected]e98aebff2012-11-16 07:31:25922TEST_PPAPI_IN_PROCESS(TalkPrivate)
923TEST_PPAPI_OUT_OF_PROCESS(TalkPrivate)
924
[email protected]a9d504a2011-11-22 22:46:47925#endif // ADDRESS_SANITIZER