Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(861)

Side by Side Diff: chrome/test/ppapi/ppapi_browsertest.cc

Issue 10699045: Fix PPB_MouseLock.LockMouse crash and add tests. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "chrome/test/ppapi/ppapi_test.h"
6
7 #include "base/test/test_timeouts.h"
8 #include "build/build_config.h"
9 #include "chrome/browser/ui/browser.h"
10 #include "chrome/browser/ui/browser_navigator.h"
11 #include "chrome/test/base/ui_test_utils.h"
12 #include "content/public/browser/web_contents.h"
13 #include "content/public/common/url_constants.h"
14
15 // This macro finesses macro expansion to do what we want.
16 #define STRIP_PREFIXES(test_name) StripPrefixes(#test_name)
17
18 // Use these macros to run the tests for a specific interface.
19 // Most interfaces should be tested with both macros.
20 #define TEST_PPAPI_IN_PROCESS(test_name) \
21 IN_PROC_BROWSER_TEST_F(PPAPITest, test_name) { \
22 RunTest(STRIP_PREFIXES(test_name)); \
23 }
24 #define TEST_PPAPI_OUT_OF_PROCESS(test_name) \
25 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, test_name) { \
26 RunTest(STRIP_PREFIXES(test_name)); \
27 }
28
29 // Similar macros that test over HTTP.
30 #define TEST_PPAPI_IN_PROCESS_VIA_HTTP(test_name) \
31 IN_PROC_BROWSER_TEST_F(PPAPITest, test_name) { \
32 RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
33 }
34 #define TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(test_name) \
35 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, test_name) { \
36 RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
37 }
38
39 // Similar macros that test with an SSL server.
40 #define TEST_PPAPI_IN_PROCESS_WITH_SSL_SERVER(test_name) \
41 IN_PROC_BROWSER_TEST_F(PPAPITest, test_name) { \
42 RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
43 }
44 #define TEST_PPAPI_OUT_OF_PROCESS_WITH_SSL_SERVER(test_name) \
45 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, test_name) { \
46 RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
47 }
48
49 // Similar macros that test with WebSocket server.
50 #define TEST_PPAPI_IN_PROCESS_WITH_WS(test_name) \
51 IN_PROC_BROWSER_TEST_F(PPAPITest, test_name) { \
52 RunTestWithWebSocketServer(STRIP_PREFIXES(test_name)); \
53 }
54 #define TEST_PPAPI_OUT_OF_PROCESS_WITH_WS(test_name) \
55 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, test_name) { \
56 RunTestWithWebSocketServer(STRIP_PREFIXES(test_name)); \
57 }
58
59 // Similar macros for tests that require an audio device.
60 #define TEST_PPAPI_IN_PROCESS_WITH_AUDIO_OUTPUT(test_name) \
61 IN_PROC_BROWSER_TEST_F(PPAPITest, test_name) { \
62 RunTestIfAudioOutputAvailable(STRIP_PREFIXES(test_name)); \
63 }
64 #define TEST_PPAPI_OUT_OF_PROCESS_WITH_AUDIO_OUTPUT(test_name) \
65 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, test_name) { \
66 RunTestIfAudioOutputAvailable(STRIP_PREFIXES(test_name)); \
67 }
68
69 #if defined(DISABLE_NACL)
70 #define TEST_PPAPI_NACL_VIA_HTTP(test_name)
71 #define TEST_PPAPI_NACL_VIA_HTTP_DISALLOWED_SOCKETS(test_name)
72 #define TEST_PPAPI_NACL_WITH_SSL_SERVER(test_name)
73 #define TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(test_name)
74 #define TEST_PPAPI_NACL_VIA_HTTP_WITH_AUDIO_OUTPUT(test_name)
75 #else
76
77 // NaCl based PPAPI tests
78 #define TEST_PPAPI_NACL_VIA_HTTP(test_name) \
79 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, test_name) { \
80 RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
81 } \
82 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, test_name) { \
83 RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
84 }
85
86 // NaCl based PPAPI tests with disallowed socket API
87 #define TEST_PPAPI_NACL_VIA_HTTP_DISALLOWED_SOCKETS(test_name) \
88 IN_PROC_BROWSER_TEST_F(PPAPINaClTestDisallowedSockets, test_name) { \
89 RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
90 }
91
92 // NaCl based PPAPI tests with SSL server
93 #define TEST_PPAPI_NACL_WITH_SSL_SERVER(test_name) \
94 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, test_name) { \
95 RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
96 } \
97 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, test_name) { \
98 RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
99 }
100
101 // NaCl based PPAPI tests with WebSocket server
102 #define TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(test_name) \
103 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, test_name) { \
104 RunTestWithWebSocketServer(STRIP_PREFIXES(test_name)); \
105 } \
106 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, test_name) { \
107 RunTestWithWebSocketServer(STRIP_PREFIXES(test_name)); \
108 }
109
110 // NaCl based PPAPI tests requiring an Audio device.
111 #define TEST_PPAPI_NACL_VIA_HTTP_WITH_AUDIO_OUTPUT(test_name) \
112 IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, test_name) { \
113 RunTestViaHTTPIfAudioOutputAvailable(STRIP_PREFIXES(test_name)); \
114 } \
115 IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, test_name) { \
116 RunTestViaHTTPIfAudioOutputAvailable(STRIP_PREFIXES(test_name)); \
117 }
118 #endif
119
120
121 //
122 // Interface tests.
123 //
124
125 // Disable tests under ASAN. http://crbug.com/104832.
126 // This is a bit heavy handed, but the majority of these tests fail under ASAN.
127 // See bug for history.
128 #if !defined(ADDRESS_SANITIZER)
129
130 TEST_PPAPI_IN_PROCESS(Broker)
131 // Flaky, http://crbug.com/111355
132 TEST_PPAPI_OUT_OF_PROCESS(DISABLED_Broker)
133
134 TEST_PPAPI_IN_PROCESS(Core)
135 TEST_PPAPI_OUT_OF_PROCESS(Core)
136
137 // Times out on Linux. http://crbug.com/108859
138 #if defined(OS_LINUX)
139 #define MAYBE_InputEvent DISABLED_InputEvent
140 #elif defined(OS_MACOSX)
141 // Flaky on Mac. http://crbug.com/109258
142 #define MAYBE_InputEvent DISABLED_InputEvent
143 #else
144 #define MAYBE_InputEvent InputEvent
145 #endif
146
147 TEST_PPAPI_IN_PROCESS(MAYBE_InputEvent)
148 TEST_PPAPI_OUT_OF_PROCESS(MAYBE_InputEvent)
149 // TODO(bbudge) Enable when input events are proxied correctly for NaCl.
150 TEST_PPAPI_NACL_VIA_HTTP(DISABLED_InputEvent)
151
152 TEST_PPAPI_IN_PROCESS(ImeInputEvent)
153 TEST_PPAPI_OUT_OF_PROCESS(ImeInputEvent)
154 // TODO(kinaba) Enable when IME events are proxied correctly for NaCl.
155 TEST_PPAPI_NACL_VIA_HTTP(DISABLED_ImeInputEvent)
156
157 TEST_PPAPI_IN_PROCESS(Instance_ExecuteScript);
158 TEST_PPAPI_OUT_OF_PROCESS(Instance_ExecuteScript)
159 // ExecuteScript isn't supported by NaCl.
160
161 // We run and reload the RecursiveObjects test to ensure that the InstanceObject
162 // (and others) are properly cleaned up after the first run.
163 IN_PROC_BROWSER_TEST_F(PPAPITest, Instance_RecursiveObjects) {
164 RunTestAndReload("Instance_RecursiveObjects");
165 }
166 // TODO(dmichael): Make it work out-of-process (or at least see whether we
167 // care).
168 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,
169 DISABLED_Instance_RecursiveObjects) {
170 RunTestAndReload("Instance_RecursiveObjects");
171 }
172 TEST_PPAPI_IN_PROCESS(Instance_LeakedObjectDestructors);
173 TEST_PPAPI_OUT_OF_PROCESS(Instance_LeakedObjectDestructors);
174 // ScriptableObjects aren't supported in NaCl, so Instance_RecursiveObjects and
175 // Instance_TestLeakedObjectDestructors don't make sense for NaCl.
176
177 TEST_PPAPI_IN_PROCESS(Graphics2D)
178 TEST_PPAPI_OUT_OF_PROCESS(Graphics2D)
179 TEST_PPAPI_NACL_VIA_HTTP(Graphics2D)
180
181 TEST_PPAPI_IN_PROCESS(ImageData)
182 TEST_PPAPI_OUT_OF_PROCESS(ImageData)
183
184 // PPAPINaClTest.ImageData times out consistently on all platforms.
185 // http://crbug.com/130377
186 TEST_PPAPI_NACL_VIA_HTTP(DISABLED_ImageData)
187
188 TEST_PPAPI_IN_PROCESS(BrowserFont)
189 TEST_PPAPI_OUT_OF_PROCESS(BrowserFont)
190
191 TEST_PPAPI_IN_PROCESS(Buffer)
192 TEST_PPAPI_OUT_OF_PROCESS(Buffer)
193
194 TEST_PPAPI_OUT_OF_PROCESS_WITH_SSL_SERVER(TCPSocketPrivate)
195 TEST_PPAPI_IN_PROCESS_WITH_SSL_SERVER(TCPSocketPrivate)
196 TEST_PPAPI_NACL_WITH_SSL_SERVER(TCPSocketPrivate)
197
198 TEST_PPAPI_OUT_OF_PROCESS_WITH_SSL_SERVER(TCPSocketPrivateTrusted)
199 TEST_PPAPI_IN_PROCESS_WITH_SSL_SERVER(TCPSocketPrivateTrusted)
200
201 TEST_PPAPI_IN_PROCESS_VIA_HTTP(UDPSocketPrivate)
202 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(UDPSocketPrivate)
203 TEST_PPAPI_NACL_VIA_HTTP(UDPSocketPrivate)
204
205 TEST_PPAPI_NACL_VIA_HTTP_DISALLOWED_SOCKETS(TCPServerSocketPrivateDisallowed)
206 TEST_PPAPI_NACL_VIA_HTTP_DISALLOWED_SOCKETS(TCPSocketPrivateDisallowed)
207 TEST_PPAPI_NACL_VIA_HTTP_DISALLOWED_SOCKETS(UDPSocketPrivateDisallowed)
208
209 TEST_PPAPI_IN_PROCESS_VIA_HTTP(TCPServerSocketPrivate)
210 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(TCPServerSocketPrivate)
211 TEST_PPAPI_NACL_VIA_HTTP(TCPServerSocketPrivate)
212
213 TEST_PPAPI_IN_PROCESS_VIA_HTTP(HostResolverPrivate_Resolve)
214 TEST_PPAPI_IN_PROCESS_VIA_HTTP(HostResolverPrivate_ResolveIPv4)
215 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(HostResolverPrivate_Resolve)
216 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(HostResolverPrivate_ResolveIPv4)
217 TEST_PPAPI_NACL_VIA_HTTP(HostResolverPrivate_Resolve)
218 TEST_PPAPI_NACL_VIA_HTTP(HostResolverPrivate_ResolveIPv4)
219
220 // URLLoader tests.
221 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_BasicGET)
222 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_BasicPOST)
223 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_BasicFilePOST)
224 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_BasicFileRangePOST)
225 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_CompoundBodyPOST)
226 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_EmptyDataPOST)
227 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_BinaryDataPOST)
228 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_CustomRequestHeader)
229 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_FailsBogusContentLength)
230 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_StreamToFile)
231 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_UntrustedSameOriginRestriction)
232 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_TrustedSameOriginRestriction)
233 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_UntrustedCrossOriginRequest)
234 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_TrustedCrossOriginRequest)
235 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_UntrustedJavascriptURLRestriction)
236 // TODO(bbudge) Fix Javascript URLs for trusted loaders.
237 // http://crbug.com/103062
238 TEST_PPAPI_IN_PROCESS_VIA_HTTP(
239 DISABLED_URLLoader_TrustedJavascriptURLRestriction)
240 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_UntrustedHttpRequests)
241 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_TrustedHttpRequests)
242 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_FollowURLRedirect)
243 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_AuditURLRedirect)
244 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_AbortCalls)
245 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_UntendedLoad)
246 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLLoader_PrefetchBufferThreshold)
247
248 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_BasicGET)
249 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_BasicPOST)
250 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_BasicFilePOST)
251 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_BasicFileRangePOST)
252 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_CompoundBodyPOST)
253 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_EmptyDataPOST)
254 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_BinaryDataPOST)
255 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_CustomRequestHeader)
256 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_FailsBogusContentLength)
257 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_StreamToFile)
258 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_UntrustedSameOriginRestriction)
259 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_TrustedSameOriginRestriction)
260 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_UntrustedCrossOriginRequest)
261 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_TrustedCrossOriginRequest)
262 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_UntrustedJavascriptURLRestriction)
263 // TODO(bbudge) Fix Javascript URLs for trusted loaders.
264 // http://crbug.com/103062
265 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(
266 DISABLED_URLLoader_TrustedJavascriptURLRestriction)
267 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_UntrustedHttpRequests)
268 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_TrustedHttpRequests)
269 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_FollowURLRedirect)
270 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_AuditURLRedirect)
271 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_AbortCalls)
272 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLLoader_UntendedLoad)
273
274 TEST_PPAPI_NACL_VIA_HTTP(URLLoader_BasicGET)
275 TEST_PPAPI_NACL_VIA_HTTP(URLLoader_BasicPOST)
276 TEST_PPAPI_NACL_VIA_HTTP(URLLoader_BasicFilePOST)
277 TEST_PPAPI_NACL_VIA_HTTP(URLLoader_BasicFileRangePOST)
278 TEST_PPAPI_NACL_VIA_HTTP(URLLoader_CompoundBodyPOST)
279 TEST_PPAPI_NACL_VIA_HTTP(URLLoader_EmptyDataPOST)
280 TEST_PPAPI_NACL_VIA_HTTP(URLLoader_BinaryDataPOST)
281 TEST_PPAPI_NACL_VIA_HTTP(URLLoader_CustomRequestHeader)
282 TEST_PPAPI_NACL_VIA_HTTP(URLLoader_FailsBogusContentLength)
283 TEST_PPAPI_NACL_VIA_HTTP(URLLoader_StreamToFile)
284 TEST_PPAPI_NACL_VIA_HTTP(URLLoader_UntrustedSameOriginRestriction)
285 TEST_PPAPI_NACL_VIA_HTTP(URLLoader_UntrustedCrossOriginRequest)
286 TEST_PPAPI_NACL_VIA_HTTP(URLLoader_UntrustedJavascriptURLRestriction)
287 TEST_PPAPI_NACL_VIA_HTTP(URLLoader_UntrustedHttpRequests)
288 TEST_PPAPI_NACL_VIA_HTTP(URLLoader_FollowURLRedirect)
289 TEST_PPAPI_NACL_VIA_HTTP(URLLoader_AuditURLRedirect)
290 TEST_PPAPI_NACL_VIA_HTTP(URLLoader_AbortCalls)
291 TEST_PPAPI_NACL_VIA_HTTP(URLLoader_UntendedLoad)
292
293 // URLRequestInfo tests.
294 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_CreateAndIsURLRequestInfo)
295 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_CreateAndIsURLRequestInfo)
296
297 // Timing out on Windows. http://crbug.com/129571
298 #if defined(OS_WIN)
299 #define MAYBE_URLRequest_CreateAndIsURLRequestInfo \
300 FLAKY_URLRequest_CreateAndIsURLRequestInfo
301 #else
302 #define MAYBE_URLRequest_CreateAndIsURLRequestInfo \
303 URLRequest_CreateAndIsURLRequestInfo
304 #endif
305 TEST_PPAPI_NACL_VIA_HTTP(MAYBE_URLRequest_CreateAndIsURLRequestInfo)
306
307 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_SetProperty)
308 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_SetProperty)
309 TEST_PPAPI_NACL_VIA_HTTP(URLRequest_SetProperty)
310 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_AppendDataToBody)
311 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_AppendDataToBody)
312 TEST_PPAPI_NACL_VIA_HTTP(URLRequest_AppendDataToBody)
313 TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_Stress)
314 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_Stress)
315 TEST_PPAPI_NACL_VIA_HTTP(URLRequest_Stress)
316
317 TEST_PPAPI_IN_PROCESS(PaintAggregator)
318 TEST_PPAPI_OUT_OF_PROCESS(PaintAggregator)
319 TEST_PPAPI_NACL_VIA_HTTP(PaintAggregator)
320
321 // TODO(danakj): http://crbug.com/115286
322 TEST_PPAPI_IN_PROCESS(DISABLED_Scrollbar)
323 // http://crbug.com/89961
324 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, DISABLED_Scrollbar) {
325 RunTest("Scrollbar");
326 }
327 // TODO(danakj): http://crbug.com/115286
328 TEST_PPAPI_NACL_VIA_HTTP(DISABLED_Scrollbar)
329
330 TEST_PPAPI_IN_PROCESS(URLUtil)
331 TEST_PPAPI_OUT_OF_PROCESS(URLUtil)
332
333 TEST_PPAPI_IN_PROCESS(CharSet)
334 TEST_PPAPI_OUT_OF_PROCESS(CharSet)
335
336 TEST_PPAPI_IN_PROCESS(Crypto)
337 TEST_PPAPI_OUT_OF_PROCESS(Crypto)
338
339 TEST_PPAPI_IN_PROCESS(Var)
340 TEST_PPAPI_OUT_OF_PROCESS(Var)
341 TEST_PPAPI_NACL_VIA_HTTP(Var)
342
343 // Flaky on mac, http://crbug.com/121107
344 #if defined(OS_MACOSX)
345 #define MAYBE_VarDeprecated DISABLED_VarDeprecated
346 #else
347 #define MAYBE_VarDeprecated VarDeprecated
348 #endif
349
350 TEST_PPAPI_IN_PROCESS(VarDeprecated)
351 TEST_PPAPI_OUT_OF_PROCESS(MAYBE_VarDeprecated)
352
353 // Windows defines 'PostMessage', so we have to undef it.
354 #ifdef PostMessage
355 #undef PostMessage
356 #endif
357 TEST_PPAPI_IN_PROCESS(PostMessage_SendInInit)
358 TEST_PPAPI_IN_PROCESS(PostMessage_SendingData)
359 // TODO(danakj): http://crbug.com/115286
360 TEST_PPAPI_IN_PROCESS(DISABLED_PostMessage_SendingArrayBuffer)
361 TEST_PPAPI_IN_PROCESS(PostMessage_MessageEvent)
362 TEST_PPAPI_IN_PROCESS(PostMessage_NoHandler)
363 TEST_PPAPI_IN_PROCESS(PostMessage_ExtraParam)
364 TEST_PPAPI_OUT_OF_PROCESS(PostMessage_SendInInit)
365 TEST_PPAPI_OUT_OF_PROCESS(PostMessage_SendingData)
366 TEST_PPAPI_OUT_OF_PROCESS(PostMessage_SendingArrayBuffer)
367 TEST_PPAPI_OUT_OF_PROCESS(PostMessage_MessageEvent)
368 TEST_PPAPI_OUT_OF_PROCESS(PostMessage_NoHandler)
369 TEST_PPAPI_OUT_OF_PROCESS(PostMessage_ExtraParam)
370 #if !defined(OS_WIN) && !(defined(OS_LINUX) && defined(ARCH_CPU_64_BITS))
371 // Times out on Windows XP, Windows 7, and Linux x64: http://crbug.com/95557
372 TEST_PPAPI_OUT_OF_PROCESS(PostMessage_NonMainThread)
373 #endif
374 TEST_PPAPI_NACL_VIA_HTTP(PostMessage_SendInInit)
375 TEST_PPAPI_NACL_VIA_HTTP(PostMessage_SendingData)
376 TEST_PPAPI_NACL_VIA_HTTP(SLOW_PostMessage_SendingArrayBuffer)
377 TEST_PPAPI_NACL_VIA_HTTP(PostMessage_MessageEvent)
378 TEST_PPAPI_NACL_VIA_HTTP(PostMessage_NoHandler)
379
380 #if defined(OS_WIN)
381 // Flaky: http://crbug.com/111209
382 //
383 // Note from sheriffs miket and syzm: we're not convinced that this test is
384 // directly to blame for the flakiness. It's possible that it's a more general
385 // problem that is exposing itself only with one of the later tests in this
386 // series.
387 TEST_PPAPI_NACL_VIA_HTTP(DISABLED_PostMessage_ExtraParam)
388 #else
389 TEST_PPAPI_NACL_VIA_HTTP(PostMessage_ExtraParam)
390 #endif
391
392 TEST_PPAPI_IN_PROCESS(Memory)
393 TEST_PPAPI_OUT_OF_PROCESS(Memory)
394 TEST_PPAPI_NACL_VIA_HTTP(Memory)
395
396 TEST_PPAPI_IN_PROCESS(VideoDecoder)
397 TEST_PPAPI_OUT_OF_PROCESS(VideoDecoder)
398
399 // Touch and SetLength fail on Mac and Linux due to sandbox restrictions.
400 // http://crbug.com/101128
401 #if defined(OS_MACOSX) || defined(OS_LINUX)
402 #define MAYBE_FileIO_ReadWriteSetLength DISABLED_FileIO_ReadWriteSetLength
403 #define MAYBE_FileIO_TouchQuery DISABLED_FileIO_TouchQuery
404 #define MAYBE_FileIO_WillWriteWillSetLength \
405 DISABLED_FileIO_WillWriteWillSetLength
406 #else
407 #define MAYBE_FileIO_ReadWriteSetLength FileIO_ReadWriteSetLength
408 #define MAYBE_FileIO_TouchQuery FileIO_TouchQuery
409 #define MAYBE_FileIO_WillWriteWillSetLength FileIO_WillWriteWillSetLength
410 #endif
411
412 TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileIO_Open)
413 TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileIO_AbortCalls)
414 TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileIO_ParallelReads)
415 TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileIO_ParallelWrites)
416 TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileIO_NotAllowMixedReadWrite)
417 TEST_PPAPI_IN_PROCESS_VIA_HTTP(MAYBE_FileIO_ReadWriteSetLength)
418 TEST_PPAPI_IN_PROCESS_VIA_HTTP(MAYBE_FileIO_TouchQuery)
419 TEST_PPAPI_IN_PROCESS_VIA_HTTP(MAYBE_FileIO_WillWriteWillSetLength)
420
421 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileIO_Open)
422 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileIO_AbortCalls)
423 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileIO_ParallelReads)
424 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileIO_ParallelWrites)
425 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileIO_NotAllowMixedReadWrite)
426 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(MAYBE_FileIO_ReadWriteSetLength)
427 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(MAYBE_FileIO_TouchQuery)
428 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(MAYBE_FileIO_WillWriteWillSetLength)
429
430 // PPAPINaclTest.FileIO_ParallelReads is flaky on Mac. http://crbug.com/121104
431 #if defined(OS_MACOSX)
432 #define MAYBE_FileIO_ParallelReads DISABLED_FileIO_ParallelReads
433 #else
434 #define MAYBE_FileIO_ParallelReads FileIO_ParallelReads
435 #endif
436
437 // PPAPINaclTest.FileIO_TouchQuery is flaky on Windows. http://crbug.com/130349
438 #if defined(OS_WIN)
439 #define MAYBE_NACL_FileIO_TouchQuery DISABLED_FileIO_TouchQuery
440 #else
441 #define MAYBE_NACL_FileIO_TouchQuery MAYBE_FileIO_TouchQuery
442 #endif
443
444 TEST_PPAPI_NACL_VIA_HTTP(FileIO_Open)
445 TEST_PPAPI_NACL_VIA_HTTP(FileIO_AbortCalls)
446 TEST_PPAPI_NACL_VIA_HTTP(MAYBE_FileIO_ParallelReads)
447 TEST_PPAPI_NACL_VIA_HTTP(FileIO_ParallelWrites)
448 TEST_PPAPI_NACL_VIA_HTTP(FileIO_NotAllowMixedReadWrite)
449 TEST_PPAPI_NACL_VIA_HTTP(MAYBE_NACL_FileIO_TouchQuery)
450 TEST_PPAPI_NACL_VIA_HTTP(MAYBE_FileIO_ReadWriteSetLength)
451 // The following test requires PPB_FileIO_Trusted, not available in NaCl.
452 TEST_PPAPI_NACL_VIA_HTTP(DISABLED_FileIO_WillWriteWillSetLength)
453
454 TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileRef)
455 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileRef)
456 TEST_PPAPI_NACL_VIA_HTTP(FileRef)
457
458 TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileSystem)
459 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileSystem)
460
461 // PPAPINaClTest.FileSystem times out consistently on Windows and Mac.
462 // http://crbug.com/130372
463 #if defined(OS_MACOSX) || defined(OS_WIN)
464 #define MAYBE_FileSystem DISABLED_FileSystem
465 #else
466 #define MAYBE_FileSystem FileSystem
467 #endif
468
469 TEST_PPAPI_NACL_VIA_HTTP(MAYBE_FileSystem)
470
471 // Mac/Aura reach NOTIMPLEMENTED/time out.
472 // Other systems work in-process, but flake out-of-process because of the
473 // asyncronous nature of the proxy.
474 // mac: http://crbug.com/96767
475 // aura: http://crbug.com/104384
476 // async flakiness: http://crbug.com/108471
477 #if defined(OS_MACOSX) || defined(USE_AURA)
478 #define MAYBE_FlashFullscreen DISABLED_FlashFullscreen
479 #define MAYBE_OutOfProcessFlashFullscreen DISABLED_FlashFullscreen
480 #else
481 #define MAYBE_FlashFullscreen FlashFullscreen
482 #define MAYBE_OutOfProcessFlashFullscreen FlashFullscreen
483 #endif
484
485 IN_PROC_BROWSER_TEST_F(PPAPITest, MAYBE_FlashFullscreen) {
486 RunTestViaHTTP("FlashFullscreen");
487 }
488 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,
489 MAYBE_OutOfProcessFlashFullscreen) {
490 RunTestViaHTTP("FlashFullscreen");
491 }
492
493 TEST_PPAPI_IN_PROCESS_VIA_HTTP(Fullscreen)
494 TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(Fullscreen)
495
496 TEST_PPAPI_IN_PROCESS(FlashClipboard)
497 TEST_PPAPI_OUT_OF_PROCESS(FlashClipboard)
498
499 TEST_PPAPI_IN_PROCESS(X509CertificatePrivate)
500 TEST_PPAPI_OUT_OF_PROCESS(X509CertificatePrivate)
501
502 // http://crbug.com/63239
503 #if defined(OS_POSIX)
504 #define MAYBE_DirectoryReader DISABLED_DirectoryReader
505 #else
506 #define MAYBE_DirectoryReader DirectoryReader
507 #endif
508
509 // Flaky on Mac + Linux, maybe http://codereview.chromium.org/7094008
510 // Not implemented out of process: http://crbug.com/106129
511 IN_PROC_BROWSER_TEST_F(PPAPITest, MAYBE_DirectoryReader) {
512 RunTestViaHTTP("DirectoryReader");
513 }
514
515 // There is no proxy. This is used for PDF metrics reporting, and PDF only
516 // runs in process, so there's currently no need for a proxy.
517 TEST_PPAPI_IN_PROCESS(UMA)
518
519 TEST_PPAPI_IN_PROCESS(NetAddressPrivate_AreEqual)
520 TEST_PPAPI_IN_PROCESS(NetAddressPrivate_AreHostsEqual)
521 TEST_PPAPI_IN_PROCESS(NetAddressPrivate_Describe)
522 TEST_PPAPI_IN_PROCESS(NetAddressPrivate_ReplacePort)
523 TEST_PPAPI_IN_PROCESS(NetAddressPrivate_GetAnyAddress)
524 TEST_PPAPI_IN_PROCESS(NetAddressPrivate_DescribeIPv6)
525 TEST_PPAPI_IN_PROCESS(NetAddressPrivate_GetFamily)
526 TEST_PPAPI_IN_PROCESS(NetAddressPrivate_GetPort)
527 TEST_PPAPI_IN_PROCESS(NetAddressPrivate_GetAddress)
528 TEST_PPAPI_IN_PROCESS(NetAddressPrivate_GetScopeID)
529 TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate_AreEqual)
530 TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate_AreHostsEqual)
531 TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate_Describe)
532 TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate_ReplacePort)
533 TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate_GetAnyAddress)
534 TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate_DescribeIPv6)
535 TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate_GetFamily)
536 TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate_GetPort)
537 TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate_GetAddress)
538 TEST_PPAPI_OUT_OF_PROCESS(NetAddressPrivate_GetScopeID)
539
540 // Frequently timing out on Windows. http://crbug.com/115440
541 #if defined(OS_WIN)
542 #define MAYBE_NetAddressPrivateUntrusted_Describe \
543 DISABLED_NetAddressPrivateUntrusted_Describe
544 #define MAYBE_NetAddressPrivateUntrusted_ReplacePort \
545 DISABLED_NetAddressPrivateUntrusted_ReplacePort
546 #define MAYBE_NetAddressPrivateUntrusted_GetPort \
547 DISABLED_NetAddressPrivateUntrusted_GetPort
548 #else
549 #define MAYBE_NetAddressPrivateUntrusted_Describe \
550 NetAddressPrivateUntrusted_Describe
551 #define MAYBE_NetAddressPrivateUntrusted_ReplacePort \
552 NetAddressPrivateUntrusted_ReplacePort
553 #define MAYBE_NetAddressPrivateUntrusted_GetPort \
554 NetAddressPrivateUntrusted_GetPort
555 #endif
556
557 // PPAPINaClTest.NetAddressPrivateUntrusted_GetFamily timing out frequently on
558 // Windows and Mac. http://crbug.com/130380
559 #if defined(OS_WIN) || defined(OS_MACOSX)
560 #define MAYBE_NetAddressPrivateUntrusted_GetFamily DISABLED_NetAddressPrivateUnt rusted_GetFamily
561 #else
562 #define MAYBE_NetAddressPrivateUntrusted_GetFamily NetAddressPrivateUntrusted_Ge tFamily
563 #endif
564
565 TEST_PPAPI_NACL_VIA_HTTP(NetAddressPrivateUntrusted_AreEqual)
566 TEST_PPAPI_NACL_VIA_HTTP(NetAddressPrivateUntrusted_AreHostsEqual)
567 TEST_PPAPI_NACL_VIA_HTTP(MAYBE_NetAddressPrivateUntrusted_Describe)
568 TEST_PPAPI_NACL_VIA_HTTP(MAYBE_NetAddressPrivateUntrusted_ReplacePort)
569 TEST_PPAPI_NACL_VIA_HTTP(NetAddressPrivateUntrusted_GetAnyAddress)
570 TEST_PPAPI_NACL_VIA_HTTP(MAYBE_NetAddressPrivateUntrusted_GetFamily)
571 TEST_PPAPI_NACL_VIA_HTTP(MAYBE_NetAddressPrivateUntrusted_GetPort)
572 TEST_PPAPI_NACL_VIA_HTTP(NetAddressPrivateUntrusted_GetAddress)
573
574 TEST_PPAPI_IN_PROCESS(NetworkMonitorPrivate_Basic)
575 TEST_PPAPI_OUT_OF_PROCESS(NetworkMonitorPrivate_Basic)
576 TEST_PPAPI_IN_PROCESS(NetworkMonitorPrivate_2Monitors)
577 TEST_PPAPI_OUT_OF_PROCESS(NetworkMonitorPrivate_2Monitors)
578 TEST_PPAPI_IN_PROCESS(NetworkMonitorPrivate_DeleteInCallback)
579 TEST_PPAPI_OUT_OF_PROCESS(NetworkMonitorPrivate_DeleteInCallback)
580 TEST_PPAPI_IN_PROCESS(NetworkMonitorPrivate_ListObserver)
581 TEST_PPAPI_OUT_OF_PROCESS(NetworkMonitorPrivate_ListObserver)
582
583 TEST_PPAPI_IN_PROCESS(Flash_SetInstanceAlwaysOnTop)
584 TEST_PPAPI_IN_PROCESS(Flash_GetProxyForURL)
585 TEST_PPAPI_IN_PROCESS(Flash_MessageLoop)
586 TEST_PPAPI_IN_PROCESS(Flash_GetLocalTimeZoneOffset)
587 TEST_PPAPI_IN_PROCESS(Flash_GetCommandLineArgs)
588 TEST_PPAPI_IN_PROCESS(Flash_GetDeviceID)
589 TEST_PPAPI_IN_PROCESS(Flash_GetSettingInt)
590 TEST_PPAPI_IN_PROCESS(Flash_GetSetting)
591 TEST_PPAPI_OUT_OF_PROCESS(Flash_SetInstanceAlwaysOnTop)
592 TEST_PPAPI_OUT_OF_PROCESS(Flash_GetProxyForURL)
593 TEST_PPAPI_OUT_OF_PROCESS(Flash_MessageLoop)
594 TEST_PPAPI_OUT_OF_PROCESS(Flash_GetLocalTimeZoneOffset)
595 TEST_PPAPI_OUT_OF_PROCESS(Flash_GetCommandLineArgs)
596 TEST_PPAPI_OUT_OF_PROCESS(Flash_GetDeviceID)
597 TEST_PPAPI_OUT_OF_PROCESS(Flash_GetSettingInt)
598 TEST_PPAPI_OUT_OF_PROCESS(Flash_GetSetting)
599
600 TEST_PPAPI_IN_PROCESS(WebSocket_IsWebSocket)
601 TEST_PPAPI_IN_PROCESS(WebSocket_UninitializedPropertiesAccess)
602 TEST_PPAPI_IN_PROCESS(WebSocket_InvalidConnect)
603 TEST_PPAPI_IN_PROCESS(WebSocket_Protocols)
604 TEST_PPAPI_IN_PROCESS(WebSocket_GetURL)
605 TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_ValidConnect)
606 TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_InvalidClose)
607 TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_ValidClose)
608 TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_GetProtocol)
609 TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_TextSendReceive)
610 TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_BinarySendReceive)
611 TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_StressedSendReceive)
612 TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_BufferedAmount)
613 TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_AbortCalls)
614 TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_CcInterfaces)
615 TEST_PPAPI_IN_PROCESS(WebSocket_UtilityInvalidConnect)
616 TEST_PPAPI_IN_PROCESS(WebSocket_UtilityProtocols)
617 TEST_PPAPI_IN_PROCESS(WebSocket_UtilityGetURL)
618 TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_UtilityValidConnect)
619 TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_UtilityInvalidClose)
620 TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_UtilityValidClose)
621 TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_UtilityGetProtocol)
622 TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_UtilityTextSendReceive)
623 TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_UtilityBinarySendReceive)
624 TEST_PPAPI_IN_PROCESS_WITH_WS(WebSocket_UtilityBufferedAmount)
625 TEST_PPAPI_NACL_VIA_HTTP(WebSocket_IsWebSocket)
626 TEST_PPAPI_NACL_VIA_HTTP(WebSocket_UninitializedPropertiesAccess)
627 TEST_PPAPI_NACL_VIA_HTTP(WebSocket_InvalidConnect)
628 TEST_PPAPI_NACL_VIA_HTTP(WebSocket_Protocols)
629 TEST_PPAPI_NACL_VIA_HTTP(WebSocket_GetURL)
630 TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_ValidConnect)
631 TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_InvalidClose)
632 TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_ValidClose)
633 TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_GetProtocol)
634 TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_TextSendReceive)
635 TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_BinarySendReceive)
636 TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_StressedSendReceive)
637 TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_BufferedAmount)
638 TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_AbortCalls)
639 TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_CcInterfaces)
640 TEST_PPAPI_NACL_VIA_HTTP(WebSocket_UtilityInvalidConnect)
641 TEST_PPAPI_NACL_VIA_HTTP(WebSocket_UtilityProtocols)
642 TEST_PPAPI_NACL_VIA_HTTP(WebSocket_UtilityGetURL)
643 TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_UtilityValidConnect)
644 TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_UtilityInvalidClose)
645 TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_UtilityValidClose)
646 TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_UtilityGetProtocol)
647 TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_UtilityTextSendReceive)
648 TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_UtilityBinarySendReceive)
649 TEST_PPAPI_NACL_VIA_HTTP_WITH_WS(WebSocket_UtilityBufferedAmount)
650
651 TEST_PPAPI_IN_PROCESS(AudioConfig_RecommendSampleRate)
652 TEST_PPAPI_IN_PROCESS(AudioConfig_ValidConfigs)
653 TEST_PPAPI_IN_PROCESS(AudioConfig_InvalidConfigs)
654 TEST_PPAPI_OUT_OF_PROCESS(AudioConfig_RecommendSampleRate)
655 TEST_PPAPI_OUT_OF_PROCESS(AudioConfig_ValidConfigs)
656 TEST_PPAPI_OUT_OF_PROCESS(AudioConfig_InvalidConfigs)
657
658 // Only run audio output tests if we have an audio device available.
659 // TODO(raymes): We should probably test scenarios where there is no audio
660 // device available.
661 TEST_PPAPI_IN_PROCESS_WITH_AUDIO_OUTPUT(Audio_Creation)
662 TEST_PPAPI_IN_PROCESS_WITH_AUDIO_OUTPUT(Audio_DestroyNoStop)
663 TEST_PPAPI_IN_PROCESS_WITH_AUDIO_OUTPUT(Audio_Failures)
664 TEST_PPAPI_IN_PROCESS_WITH_AUDIO_OUTPUT(Audio_AudioCallback1)
665 TEST_PPAPI_IN_PROCESS_WITH_AUDIO_OUTPUT(Audio_AudioCallback2)
666 TEST_PPAPI_OUT_OF_PROCESS_WITH_AUDIO_OUTPUT(Audio_Creation)
667 TEST_PPAPI_OUT_OF_PROCESS_WITH_AUDIO_OUTPUT(Audio_DestroyNoStop)
668 TEST_PPAPI_OUT_OF_PROCESS_WITH_AUDIO_OUTPUT(Audio_Failures)
669 TEST_PPAPI_OUT_OF_PROCESS_WITH_AUDIO_OUTPUT(Audio_AudioCallback1)
670 TEST_PPAPI_OUT_OF_PROCESS_WITH_AUDIO_OUTPUT(Audio_AudioCallback2)
671 TEST_PPAPI_NACL_VIA_HTTP_WITH_AUDIO_OUTPUT(Audio_Creation)
672 TEST_PPAPI_NACL_VIA_HTTP_WITH_AUDIO_OUTPUT(Audio_DestroyNoStop)
673 TEST_PPAPI_NACL_VIA_HTTP_WITH_AUDIO_OUTPUT(Audio_Failures)
674 TEST_PPAPI_NACL_VIA_HTTP_WITH_AUDIO_OUTPUT(Audio_AudioCallback1)
675 TEST_PPAPI_NACL_VIA_HTTP_WITH_AUDIO_OUTPUT(Audio_AudioCallback2)
676
677 TEST_PPAPI_IN_PROCESS(View_CreatedVisible);
678 TEST_PPAPI_OUT_OF_PROCESS(View_CreatedVisible);
679 TEST_PPAPI_NACL_VIA_HTTP(View_CreatedVisible);
680 // This test ensures that plugins created in a background tab have their
681 // initial visibility set to false. We don't bother testing in-process for this
682 // custom test since the out of process code also exercises in-process.
683
684 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, View_CreateInvisible) {
685 // Make a second tab in the foreground.
686 GURL url = GetTestFileUrl("View_CreatedInvisible");
687 browser::NavigateParams params(browser(), url, content::PAGE_TRANSITION_LINK);
688 params.disposition = NEW_BACKGROUND_TAB;
689 ui_test_utils::NavigateToURL(&params);
690 }
691
692 // This test messes with tab visibility so is custom.
693 IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, View_PageHideShow) {
694 // The plugin will be loaded in the foreground tab and will send us a message.
695 TestFinishObserver observer(
696 browser()->GetActiveWebContents()->GetRenderViewHost(),
697 TestTimeouts::action_max_timeout_ms());
698
699 GURL url = GetTestFileUrl("View_PageHideShow");
700 ui_test_utils::NavigateToURL(browser(), url);
701
702 ASSERT_TRUE(observer.WaitForFinish()) << "Test timed out.";
703 EXPECT_STREQ("TestPageHideShow:Created", observer.result().c_str());
704 observer.Reset();
705
706 // Make a new tab to cause the original one to hide, this should trigger the
707 // next phase of the test.
708 browser::NavigateParams params(
709 browser(), GURL(chrome::kAboutBlankURL), content::PAGE_TRANSITION_LINK);
710 params.disposition = NEW_FOREGROUND_TAB;
711 ui_test_utils::NavigateToURL(&params);
712
713 // Wait until the test acks that it got hidden.
714 ASSERT_TRUE(observer.WaitForFinish()) << "Test timed out.";
715 EXPECT_STREQ("TestPageHideShow:Hidden", observer.result().c_str());
716
717 // Wait for the test completion event.
718 observer.Reset();
719
720 // Switch back to the test tab.
721 browser()->ActivateTabAt(0, true);
722
723 ASSERT_TRUE(observer.WaitForFinish()) << "Test timed out.";
724 EXPECT_STREQ("PASS", observer.result().c_str());
725 }
726
727 TEST_PPAPI_IN_PROCESS(View_SizeChange);
728 TEST_PPAPI_OUT_OF_PROCESS(View_SizeChange);
729 TEST_PPAPI_NACL_VIA_HTTP(View_SizeChange);
730 TEST_PPAPI_IN_PROCESS(View_ClipChange);
731 TEST_PPAPI_OUT_OF_PROCESS(View_ClipChange);
732 TEST_PPAPI_NACL_VIA_HTTP(View_ClipChange);
733
734 TEST_PPAPI_IN_PROCESS(ResourceArray_Basics)
735 TEST_PPAPI_IN_PROCESS(ResourceArray_OutOfRangeAccess)
736 TEST_PPAPI_IN_PROCESS(ResourceArray_EmptyArray)
737 TEST_PPAPI_IN_PROCESS(ResourceArray_InvalidElement)
738 TEST_PPAPI_OUT_OF_PROCESS(ResourceArray_Basics)
739 TEST_PPAPI_OUT_OF_PROCESS(ResourceArray_OutOfRangeAccess)
740 TEST_PPAPI_OUT_OF_PROCESS(ResourceArray_EmptyArray)
741 TEST_PPAPI_OUT_OF_PROCESS(ResourceArray_InvalidElement)
742
743 TEST_PPAPI_IN_PROCESS(FlashMessageLoop_Basics)
744 TEST_PPAPI_IN_PROCESS(FlashMessageLoop_RunWithoutQuit)
745 TEST_PPAPI_OUT_OF_PROCESS(FlashMessageLoop_Basics)
746 TEST_PPAPI_OUT_OF_PROCESS(FlashMessageLoop_RunWithoutQuit)
747
748 TEST_PPAPI_IN_PROCESS(MouseCursor)
749 TEST_PPAPI_OUT_OF_PROCESS(MouseCursor)
750 TEST_PPAPI_NACL_VIA_HTTP(MouseCursor)
751
752 // Only enabled in out-of-process mode.
753 TEST_PPAPI_OUT_OF_PROCESS(FlashFile_CreateTemporaryFile)
754
755 #endif // ADDRESS_SANITIZER
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698