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

Side by Side Diff: content/browser/media/webrtc_getusermedia_browsertest.cc

Issue 1411073005: Migrating tests to use EmbeddedTestServer (/content) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase. Created 5 years, 1 month 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
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/command_line.h" 5 #include "base/command_line.h"
6 #include "base/json/json_reader.h" 6 #include "base/json/json_reader.h"
7 #include "base/strings/stringprintf.h" 7 #include "base/strings/stringprintf.h"
8 #include "base/test/trace_event_analyzer.h" 8 #include "base/test/trace_event_analyzer.h"
9 #include "base/trace_event/trace_event_impl.h" 9 #include "base/trace_event/trace_event_impl.h"
10 #include "base/values.h" 10 #include "base/values.h"
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after
114 message_loop_runner_->Quit(); 114 message_loop_runner_->Quit();
115 } 115 }
116 116
117 TraceAnalyzer* CreateTraceAnalyzer() { 117 TraceAnalyzer* CreateTraceAnalyzer() {
118 return TraceAnalyzer::Create("[" + recorded_trace_data_->data() + "]"); 118 return TraceAnalyzer::Create("[" + recorded_trace_data_->data() + "]");
119 } 119 }
120 120
121 void RunGetUserMediaAndCollectMeasures(const int time_to_sample_secs, 121 void RunGetUserMediaAndCollectMeasures(const int time_to_sample_secs,
122 const std::string& measure_filter, 122 const std::string& measure_filter,
123 const std::string& graph_name) { 123 const std::string& graph_name) {
124 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 124 ASSERT_TRUE(embedded_test_server()->Start());
125 125
126 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 126 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
127 NavigateToURL(shell(), url); 127 NavigateToURL(shell(), url);
128 128
129 // Put getUserMedia to work and let it run for a couple of seconds. 129 // Put getUserMedia to work and let it run for a couple of seconds.
130 DCHECK(time_to_sample_secs); 130 DCHECK(time_to_sample_secs);
131 ExecuteJavascriptAndWaitForOk( 131 ExecuteJavascriptAndWaitForOk(
132 base::StringPrintf("%s({video: true}, 'myStreamName');", 132 base::StringPrintf("%s({video: true}, 'myStreamName');",
133 kGetUserMediaAndGetStreamUp)); 133 kGetUserMediaAndGetStreamUp));
134 134
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
172 172
173 perf_test::PrintResultList( 173 perf_test::PrintResultList(
174 graph_name, "", "interarrival_time", interarrival_us, "us", true); 174 graph_name, "", "interarrival_time", interarrival_us, "us", true);
175 } 175 }
176 176
177 // Runs the JavaScript twoGetUserMedia with |constraints1| and |constraint2|. 177 // Runs the JavaScript twoGetUserMedia with |constraints1| and |constraint2|.
178 void RunTwoGetTwoGetUserMediaWithDifferentContraints( 178 void RunTwoGetTwoGetUserMediaWithDifferentContraints(
179 const std::string& constraints1, 179 const std::string& constraints1,
180 const std::string& constraints2, 180 const std::string& constraints2,
181 const std::string& expected_result) { 181 const std::string& expected_result) {
182 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 182 ASSERT_TRUE(embedded_test_server()->Start());
183 183
184 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 184 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
185 NavigateToURL(shell(), url); 185 NavigateToURL(shell(), url);
186 186
187 std::string command = "twoGetUserMedia(" + constraints1 + ',' + 187 std::string command = "twoGetUserMedia(" + constraints1 + ',' +
188 constraints2 + ')'; 188 constraints2 + ')';
189 189
190 EXPECT_EQ(expected_result, ExecuteJavascriptAndReturnResult(command)); 190 EXPECT_EQ(expected_result, ExecuteJavascriptAndReturnResult(command));
191 } 191 }
192 192
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
242 // none of the callbacks are called the tests will simply time out and fail. 242 // none of the callbacks are called the tests will simply time out and fail.
243 243
244 // Test fails under MSan, http://crbug.com/445745 244 // Test fails under MSan, http://crbug.com/445745
245 #if defined(MEMORY_SANITIZER) 245 #if defined(MEMORY_SANITIZER)
246 #define MAYBE_GetVideoStreamAndStop DISABLED_GetVideoStreamAndStop 246 #define MAYBE_GetVideoStreamAndStop DISABLED_GetVideoStreamAndStop
247 #else 247 #else
248 #define MAYBE_GetVideoStreamAndStop GetVideoStreamAndStop 248 #define MAYBE_GetVideoStreamAndStop GetVideoStreamAndStop
249 #endif 249 #endif
250 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 250 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
251 MAYBE_GetVideoStreamAndStop) { 251 MAYBE_GetVideoStreamAndStop) {
252 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 252 ASSERT_TRUE(embedded_test_server()->Start());
253 253
254 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 254 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
255 NavigateToURL(shell(), url); 255 NavigateToURL(shell(), url);
256 256
257 ExecuteJavascriptAndWaitForOk( 257 ExecuteJavascriptAndWaitForOk(
258 base::StringPrintf("%s({video: true});", kGetUserMediaAndStop)); 258 base::StringPrintf("%s({video: true});", kGetUserMediaAndStop));
259 } 259 }
260 260
261 // Test fails under MSan, http://crbug.com/445745 261 // Test fails under MSan, http://crbug.com/445745
262 #if defined(MEMORY_SANITIZER) 262 #if defined(MEMORY_SANITIZER)
263 #define MAYBE_RenderSameTrackMediastreamAndStop \ 263 #define MAYBE_RenderSameTrackMediastreamAndStop \
264 DISABLED_RenderSameTrackMediastreamAndStop 264 DISABLED_RenderSameTrackMediastreamAndStop
265 #else 265 #else
266 #define MAYBE_RenderSameTrackMediastreamAndStop \ 266 #define MAYBE_RenderSameTrackMediastreamAndStop \
267 RenderSameTrackMediastreamAndStop 267 RenderSameTrackMediastreamAndStop
268 #endif 268 #endif
269 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 269 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
270 MAYBE_RenderSameTrackMediastreamAndStop) { 270 MAYBE_RenderSameTrackMediastreamAndStop) {
271 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 271 ASSERT_TRUE(embedded_test_server()->Start());
272 272
273 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 273 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
274 NavigateToURL(shell(), url); 274 NavigateToURL(shell(), url);
275 275
276 ExecuteJavascriptAndWaitForOk( 276 ExecuteJavascriptAndWaitForOk(
277 base::StringPrintf("%s({video: true});", 277 base::StringPrintf("%s({video: true});",
278 kRenderSameTrackMediastreamAndStop)); 278 kRenderSameTrackMediastreamAndStop));
279 } 279 }
280 280
281 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 281 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
282 RenderClonedMediastreamAndStop) { 282 RenderClonedMediastreamAndStop) {
283 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 283 ASSERT_TRUE(embedded_test_server()->Start());
284 284
285 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 285 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
286 NavigateToURL(shell(), url); 286 NavigateToURL(shell(), url);
287 287
288 288
289 ExecuteJavascriptAndWaitForOk( 289 ExecuteJavascriptAndWaitForOk(
290 base::StringPrintf("%s({video: true});", 290 base::StringPrintf("%s({video: true});",
291 kRenderClonedMediastreamAndStop)); 291 kRenderClonedMediastreamAndStop));
292 } 292 }
293 293
294 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 294 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
295 kRenderClonedTrackMediastreamAndStop) { 295 kRenderClonedTrackMediastreamAndStop) {
296 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 296 ASSERT_TRUE(embedded_test_server()->Start());
297 297
298 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 298 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
299 NavigateToURL(shell(), url); 299 NavigateToURL(shell(), url);
300 300
301 ExecuteJavascriptAndWaitForOk( 301 ExecuteJavascriptAndWaitForOk(
302 base::StringPrintf("%s({video: true});", 302 base::StringPrintf("%s({video: true});",
303 kRenderClonedTrackMediastreamAndStop)); 303 kRenderClonedTrackMediastreamAndStop));
304 } 304 }
305 305
306 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 306 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
307 kRenderDuplicatedMediastreamAndStop) { 307 kRenderDuplicatedMediastreamAndStop) {
308 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 308 ASSERT_TRUE(embedded_test_server()->Start());
309 309
310 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 310 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
311 NavigateToURL(shell(), url); 311 NavigateToURL(shell(), url);
312 312
313 ExecuteJavascriptAndWaitForOk( 313 ExecuteJavascriptAndWaitForOk(
314 base::StringPrintf("%s({video: true});", 314 base::StringPrintf("%s({video: true});",
315 kRenderDuplicatedMediastreamAndStop)); 315 kRenderDuplicatedMediastreamAndStop));
316 } 316 }
317 317
318 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 318 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
319 GetAudioAndVideoStreamAndStop) { 319 GetAudioAndVideoStreamAndStop) {
320 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 320 ASSERT_TRUE(embedded_test_server()->Start());
321 321
322 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 322 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
323 NavigateToURL(shell(), url); 323 NavigateToURL(shell(), url);
324 324
325 ExecuteJavascriptAndWaitForOk(base::StringPrintf( 325 ExecuteJavascriptAndWaitForOk(base::StringPrintf(
326 "%s({video: true, audio: true});", kGetUserMediaAndStop)); 326 "%s({video: true, audio: true});", kGetUserMediaAndStop));
327 } 327 }
328 328
329 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 329 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
330 GetAudioAndVideoStreamAndClone) { 330 GetAudioAndVideoStreamAndClone) {
331 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 331 ASSERT_TRUE(embedded_test_server()->Start());
332 332
333 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 333 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
334 NavigateToURL(shell(), url); 334 NavigateToURL(shell(), url);
335 335
336 ExecuteJavascriptAndWaitForOk("getUserMediaAndClone();"); 336 ExecuteJavascriptAndWaitForOk("getUserMediaAndClone();");
337 } 337 }
338 338
339 // Test fails under Android, http://crbug.com/524388 339 // Test fails under Android, http://crbug.com/524388
340 // Test fails under MSan 340 // Test fails under MSan
341 // Flaky everywhere else: http://crbug.com/523152 341 // Flaky everywhere else: http://crbug.com/523152
342 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 342 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
343 RenderVideoTrackInMultipleTagsAndPause) { 343 RenderVideoTrackInMultipleTagsAndPause) {
344 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 344 ASSERT_TRUE(embedded_test_server()->Start());
345 345
346 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 346 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
347 NavigateToURL(shell(), url); 347 NavigateToURL(shell(), url);
348 348
349 ExecuteJavascriptAndWaitForOk("getUserMediaAndRenderInSeveralVideoTags();"); 349 ExecuteJavascriptAndWaitForOk("getUserMediaAndRenderInSeveralVideoTags();");
350 } 350 }
351 351
352 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 352 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
353 GetUserMediaWithMandatorySourceID) { 353 GetUserMediaWithMandatorySourceID) {
354 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 354 ASSERT_TRUE(embedded_test_server()->Start());
355 355
356 std::vector<std::string> audio_ids; 356 std::vector<std::string> audio_ids;
357 std::vector<std::string> video_ids; 357 std::vector<std::string> video_ids;
358 GetInputDevices(&audio_ids, &video_ids); 358 GetInputDevices(&audio_ids, &video_ids);
359 359
360 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 360 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
361 361
362 // Test all combinations of mandatory sourceID; 362 // Test all combinations of mandatory sourceID;
363 for (std::vector<std::string>::const_iterator video_it = video_ids.begin(); 363 for (std::vector<std::string>::const_iterator video_it = video_ids.begin();
364 video_it != video_ids.end(); ++video_it) { 364 video_it != video_ids.end(); ++video_it) {
365 for (std::vector<std::string>::const_iterator audio_it = audio_ids.begin(); 365 for (std::vector<std::string>::const_iterator audio_it = audio_ids.begin();
366 audio_it != audio_ids.end(); ++audio_it) { 366 audio_it != audio_ids.end(); ++audio_it) {
367 NavigateToURL(shell(), url); 367 NavigateToURL(shell(), url);
368 EXPECT_EQ(kOK, ExecuteJavascriptAndReturnResult( 368 EXPECT_EQ(kOK, ExecuteJavascriptAndReturnResult(
369 GenerateGetUserMediaWithMandatorySourceID( 369 GenerateGetUserMediaWithMandatorySourceID(
370 kGetUserMediaAndStop, 370 kGetUserMediaAndStop,
371 *audio_it, 371 *audio_it,
372 *video_it))); 372 *video_it)));
373 } 373 }
374 } 374 }
375 } 375 }
376 376
377 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 377 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
378 GetUserMediaWithInvalidMandatorySourceID) { 378 GetUserMediaWithInvalidMandatorySourceID) {
379 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 379 ASSERT_TRUE(embedded_test_server()->Start());
380 380
381 std::vector<std::string> audio_ids; 381 std::vector<std::string> audio_ids;
382 std::vector<std::string> video_ids; 382 std::vector<std::string> video_ids;
383 GetInputDevices(&audio_ids, &video_ids); 383 GetInputDevices(&audio_ids, &video_ids);
384 384
385 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 385 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
386 386
387 // Test with invalid mandatory audio sourceID. 387 // Test with invalid mandatory audio sourceID.
388 NavigateToURL(shell(), url); 388 NavigateToURL(shell(), url);
389 EXPECT_EQ("DevicesNotFoundError", ExecuteJavascriptAndReturnResult( 389 EXPECT_EQ("DevicesNotFoundError", ExecuteJavascriptAndReturnResult(
(...skipping 12 matching lines...) Expand all
402 // Test with empty mandatory audio sourceID. 402 // Test with empty mandatory audio sourceID.
403 EXPECT_EQ("DevicesNotFoundError", ExecuteJavascriptAndReturnResult( 403 EXPECT_EQ("DevicesNotFoundError", ExecuteJavascriptAndReturnResult(
404 GenerateGetUserMediaWithMandatorySourceID( 404 GenerateGetUserMediaWithMandatorySourceID(
405 kGetUserMediaAndExpectFailure, 405 kGetUserMediaAndExpectFailure,
406 "", 406 "",
407 video_ids[0]))); 407 video_ids[0])));
408 } 408 }
409 409
410 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 410 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
411 GetUserMediaWithInvalidOptionalSourceID) { 411 GetUserMediaWithInvalidOptionalSourceID) {
412 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 412 ASSERT_TRUE(embedded_test_server()->Start());
413 413
414 std::vector<std::string> audio_ids; 414 std::vector<std::string> audio_ids;
415 std::vector<std::string> video_ids; 415 std::vector<std::string> video_ids;
416 GetInputDevices(&audio_ids, &video_ids); 416 GetInputDevices(&audio_ids, &video_ids);
417 417
418 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 418 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
419 419
420 // Test with invalid optional audio sourceID. 420 // Test with invalid optional audio sourceID.
421 NavigateToURL(shell(), url); 421 NavigateToURL(shell(), url);
422 EXPECT_EQ(kOK, ExecuteJavascriptAndReturnResult( 422 EXPECT_EQ(kOK, ExecuteJavascriptAndReturnResult(
(...skipping 12 matching lines...) Expand all
435 // Test with empty optional audio sourceID. 435 // Test with empty optional audio sourceID.
436 EXPECT_EQ(kOK, ExecuteJavascriptAndReturnResult( 436 EXPECT_EQ(kOK, ExecuteJavascriptAndReturnResult(
437 GenerateGetUserMediaWithOptionalSourceID( 437 GenerateGetUserMediaWithOptionalSourceID(
438 kGetUserMediaAndStop, 438 kGetUserMediaAndStop,
439 "", 439 "",
440 video_ids[0]))); 440 video_ids[0])));
441 } 441 }
442 442
443 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 443 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
444 TwoGetUserMediaAndStop) { 444 TwoGetUserMediaAndStop) {
445 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 445 ASSERT_TRUE(embedded_test_server()->Start());
446 446
447 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 447 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
448 NavigateToURL(shell(), url); 448 NavigateToURL(shell(), url);
449 449
450 ExecuteJavascriptAndWaitForOk( 450 ExecuteJavascriptAndWaitForOk(
451 "twoGetUserMediaAndStop({video: true, audio: true});"); 451 "twoGetUserMediaAndStop({video: true, audio: true});");
452 } 452 }
453 453
454 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 454 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
455 TwoGetUserMediaWithEqualConstraints) { 455 TwoGetUserMediaWithEqualConstraints) {
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
514 // Test fails under MSan, http://crbug.com/445745 514 // Test fails under MSan, http://crbug.com/445745
515 #if defined(MEMORY_SANITIZER) 515 #if defined(MEMORY_SANITIZER)
516 #define MAYBE_TwoGetUserMediaAndVerifyFrameRate \ 516 #define MAYBE_TwoGetUserMediaAndVerifyFrameRate \
517 DISABLED_TwoGetUserMediaAndVerifyFrameRate 517 DISABLED_TwoGetUserMediaAndVerifyFrameRate
518 #else 518 #else
519 #define MAYBE_TwoGetUserMediaAndVerifyFrameRate \ 519 #define MAYBE_TwoGetUserMediaAndVerifyFrameRate \
520 TwoGetUserMediaAndVerifyFrameRate 520 TwoGetUserMediaAndVerifyFrameRate
521 #endif 521 #endif
522 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 522 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
523 MAYBE_TwoGetUserMediaAndVerifyFrameRate) { 523 MAYBE_TwoGetUserMediaAndVerifyFrameRate) {
524 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 524 ASSERT_TRUE(embedded_test_server()->Start());
525 525
526 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 526 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
527 NavigateToURL(shell(), url); 527 NavigateToURL(shell(), url);
528 528
529 std::string constraints1 = 529 std::string constraints1 =
530 "{video: {mandatory: {minWidth:640 , minHeight: 480, " 530 "{video: {mandatory: {minWidth:640 , minHeight: 480, "
531 "minFrameRate : 15, maxFrameRate : 15}}}"; 531 "minFrameRate : 15, maxFrameRate : 15}}}";
532 std::string constraints2 = 532 std::string constraints2 =
533 "{video: {mandatory: {maxWidth:320 , maxHeight: 240," 533 "{video: {mandatory: {maxWidth:320 , maxHeight: 240,"
534 "minFrameRate : 7, maxFrameRate : 7}}}"; 534 "minFrameRate : 7, maxFrameRate : 7}}}";
535 535
536 std::string command = "twoGetUserMediaAndVerifyFrameRate(" + 536 std::string command = "twoGetUserMediaAndVerifyFrameRate(" +
537 constraints1 + ',' + constraints2 + ", 15, 7)"; 537 constraints1 + ',' + constraints2 + ", 15, 7)";
538 ExecuteJavascriptAndWaitForOk(command); 538 ExecuteJavascriptAndWaitForOk(command);
539 } 539 }
540 540
541 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 541 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
542 GetUserMediaWithTooHighVideoConstraintsValues) { 542 GetUserMediaWithTooHighVideoConstraintsValues) {
543 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 543 ASSERT_TRUE(embedded_test_server()->Start());
544 544
545 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 545 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
546 546
547 int large_value = 99999; 547 int large_value = 99999;
548 std::string call = GenerateGetUserMediaCall(kGetUserMediaAndExpectFailure, 548 std::string call = GenerateGetUserMediaCall(kGetUserMediaAndExpectFailure,
549 large_value, 549 large_value,
550 large_value, 550 large_value,
551 large_value, 551 large_value,
552 large_value, 552 large_value,
553 large_value, 553 large_value,
554 large_value); 554 large_value);
555 NavigateToURL(shell(), url); 555 NavigateToURL(shell(), url);
556 556
557 EXPECT_EQ("ConstraintNotSatisfiedError", 557 EXPECT_EQ("ConstraintNotSatisfiedError",
558 ExecuteJavascriptAndReturnResult(call)); 558 ExecuteJavascriptAndReturnResult(call));
559 } 559 }
560 560
561 // This test makes two getUserMedia requests, one with impossible constraints 561 // This test makes two getUserMedia requests, one with impossible constraints
562 // that should trigger an error, and one with valid constraints. The test 562 // that should trigger an error, and one with valid constraints. The test
563 // verifies getUserMedia can succeed after being given impossible constraints. 563 // verifies getUserMedia can succeed after being given impossible constraints.
564 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 564 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
565 TwoGetUserMediaAndCheckCallbackAfterFailure) { 565 TwoGetUserMediaAndCheckCallbackAfterFailure) {
566 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 566 ASSERT_TRUE(embedded_test_server()->Start());
567 567
568 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 568 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
569 NavigateToURL(shell(), url); 569 NavigateToURL(shell(), url);
570 570
571 int large_value = 99999; 571 int large_value = 99999;
572 const std::string gum_with_impossible_constraints = 572 const std::string gum_with_impossible_constraints =
573 GenerateGetUserMediaCall(kGetUserMediaAndExpectFailure, 573 GenerateGetUserMediaCall(kGetUserMediaAndExpectFailure,
574 large_value, 574 large_value,
575 large_value, 575 large_value,
576 large_value, 576 large_value,
(...skipping 27 matching lines...) Expand all
604 // Test fails under MSan, http://crbug.com/445745 604 // Test fails under MSan, http://crbug.com/445745
605 #if defined(MEMORY_SANITIZER) 605 #if defined(MEMORY_SANITIZER)
606 #define MAYBE_TestGetUserMediaAspectRatio4To3 \ 606 #define MAYBE_TestGetUserMediaAspectRatio4To3 \
607 DISABLED_TestGetUserMediaAspectRatio4To3 607 DISABLED_TestGetUserMediaAspectRatio4To3
608 #else 608 #else
609 #define MAYBE_TestGetUserMediaAspectRatio4To3 TestGetUserMediaAspectRatio4To3 609 #define MAYBE_TestGetUserMediaAspectRatio4To3 TestGetUserMediaAspectRatio4To3
610 #endif 610 #endif
611 // This test calls getUserMedia and checks for aspect ratio behavior. 611 // This test calls getUserMedia and checks for aspect ratio behavior.
612 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 612 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
613 MAYBE_TestGetUserMediaAspectRatio4To3) { 613 MAYBE_TestGetUserMediaAspectRatio4To3) {
614 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 614 ASSERT_TRUE(embedded_test_server()->Start());
615 615
616 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 616 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
617 617
618 std::string constraints_4_3 = GenerateGetUserMediaCall( 618 std::string constraints_4_3 = GenerateGetUserMediaCall(
619 kGetUserMediaAndAnalyseAndStop, 640, 640, 480, 480, 10, 30); 619 kGetUserMediaAndAnalyseAndStop, 640, 640, 480, 480, 10, 30);
620 620
621 NavigateToURL(shell(), url); 621 NavigateToURL(shell(), url);
622 ASSERT_EQ("w=640:h=480", 622 ASSERT_EQ("w=640:h=480",
623 ExecuteJavascriptAndReturnResult(constraints_4_3)); 623 ExecuteJavascriptAndReturnResult(constraints_4_3));
624 } 624 }
625 625
626 // Test fails under MSan, http://crbug.com/445745 626 // Test fails under MSan, http://crbug.com/445745
627 #if defined(MEMORY_SANITIZER) 627 #if defined(MEMORY_SANITIZER)
628 #define MAYBE_TestGetUserMediaAspectRatio16To9 \ 628 #define MAYBE_TestGetUserMediaAspectRatio16To9 \
629 DISABLED_TestGetUserMediaAspectRatio16To9 629 DISABLED_TestGetUserMediaAspectRatio16To9
630 #else 630 #else
631 #define MAYBE_TestGetUserMediaAspectRatio16To9 TestGetUserMediaAspectRatio16To9 631 #define MAYBE_TestGetUserMediaAspectRatio16To9 TestGetUserMediaAspectRatio16To9
632 #endif 632 #endif
633 // This test calls getUserMedia and checks for aspect ratio behavior. 633 // This test calls getUserMedia and checks for aspect ratio behavior.
634 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 634 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
635 MAYBE_TestGetUserMediaAspectRatio16To9) { 635 MAYBE_TestGetUserMediaAspectRatio16To9) {
636 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 636 ASSERT_TRUE(embedded_test_server()->Start());
637 637
638 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 638 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
639 639
640 std::string constraints_16_9 = GenerateGetUserMediaCall( 640 std::string constraints_16_9 = GenerateGetUserMediaCall(
641 kGetUserMediaAndAnalyseAndStop, 640, 640, 360, 360, 10, 30); 641 kGetUserMediaAndAnalyseAndStop, 640, 640, 360, 360, 10, 30);
642 642
643 NavigateToURL(shell(), url); 643 NavigateToURL(shell(), url);
644 ASSERT_EQ("w=640:h=360", 644 ASSERT_EQ("w=640:h=360",
645 ExecuteJavascriptAndReturnResult(constraints_16_9)); 645 ExecuteJavascriptAndReturnResult(constraints_16_9));
646 } 646 }
647 647
648 // Test fails under MSan, http://crbug.com/445745 648 // Test fails under MSan, http://crbug.com/445745
649 #if defined(MEMORY_SANITIZER) 649 #if defined(MEMORY_SANITIZER)
650 #define MAYBE_TestGetUserMediaAspectRatio1To1 \ 650 #define MAYBE_TestGetUserMediaAspectRatio1To1 \
651 DISABLED_TestGetUserMediaAspectRatio1To1 651 DISABLED_TestGetUserMediaAspectRatio1To1
652 #else 652 #else
653 #define MAYBE_TestGetUserMediaAspectRatio1To1 TestGetUserMediaAspectRatio1To1 653 #define MAYBE_TestGetUserMediaAspectRatio1To1 TestGetUserMediaAspectRatio1To1
654 #endif 654 #endif
655 // This test calls getUserMedia and checks for aspect ratio behavior. 655 // This test calls getUserMedia and checks for aspect ratio behavior.
656 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 656 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
657 MAYBE_TestGetUserMediaAspectRatio1To1) { 657 MAYBE_TestGetUserMediaAspectRatio1To1) {
658 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 658 ASSERT_TRUE(embedded_test_server()->Start());
659 659
660 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 660 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
661 661
662 std::string constraints_1_1 = GenerateGetUserMediaCall( 662 std::string constraints_1_1 = GenerateGetUserMediaCall(
663 kGetUserMediaAndAnalyseAndStop, 320, 320, 320, 320, 10, 30); 663 kGetUserMediaAndAnalyseAndStop, 320, 320, 320, 320, 10, 30);
664 664
665 NavigateToURL(shell(), url); 665 NavigateToURL(shell(), url);
666 ASSERT_EQ("w=320:h=320", 666 ASSERT_EQ("w=320:h=320",
667 ExecuteJavascriptAndReturnResult(constraints_1_1)); 667 ExecuteJavascriptAndReturnResult(constraints_1_1));
668 } 668 }
669 669
670 // This test calls getUserMedia in an iframe and immediately close the iframe 670 // This test calls getUserMedia in an iframe and immediately close the iframe
671 // in the scope of the success callback. 671 // in the scope of the success callback.
672 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 672 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
673 AudioInIFrameAndCloseInSuccessCb) { 673 AudioInIFrameAndCloseInSuccessCb) {
674 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 674 ASSERT_TRUE(embedded_test_server()->Start());
675 675
676 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 676 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
677 NavigateToURL(shell(), url); 677 NavigateToURL(shell(), url);
678 678
679 std::string call = 679 std::string call =
680 "getUserMediaInIframeAndCloseInSuccessCb({audio: true});"; 680 "getUserMediaInIframeAndCloseInSuccessCb({audio: true});";
681 ExecuteJavascriptAndWaitForOk(call); 681 ExecuteJavascriptAndWaitForOk(call);
682 } 682 }
683 683
684 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 684 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
685 VideoInIFrameAndCloseInSuccessCb) { 685 VideoInIFrameAndCloseInSuccessCb) {
686 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 686 ASSERT_TRUE(embedded_test_server()->Start());
687 687
688 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 688 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
689 NavigateToURL(shell(), url); 689 NavigateToURL(shell(), url);
690 690
691 std::string call = 691 std::string call =
692 "getUserMediaInIframeAndCloseInSuccessCb({video: true});"; 692 "getUserMediaInIframeAndCloseInSuccessCb({video: true});";
693 ExecuteJavascriptAndWaitForOk(call); 693 ExecuteJavascriptAndWaitForOk(call);
694 } 694 }
695 695
696 // This test calls getUserMedia in an iframe and immediately close the iframe 696 // This test calls getUserMedia in an iframe and immediately close the iframe
697 // in the scope of the failure callback. 697 // in the scope of the failure callback.
698 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 698 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
699 VideoWithBadConstraintsInIFrameAndCloseInFailureCb) { 699 VideoWithBadConstraintsInIFrameAndCloseInFailureCb) {
700 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 700 ASSERT_TRUE(embedded_test_server()->Start());
701 701
702 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 702 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
703 703
704 int large_value = 99999; 704 int large_value = 99999;
705 std::string call = 705 std::string call =
706 GenerateGetUserMediaCall("getUserMediaInIframeAndCloseInFailureCb", 706 GenerateGetUserMediaCall("getUserMediaInIframeAndCloseInFailureCb",
707 large_value, 707 large_value,
708 large_value, 708 large_value,
709 large_value, 709 large_value,
710 large_value, 710 large_value,
711 large_value, 711 large_value,
712 large_value); 712 large_value);
713 NavigateToURL(shell(), url); 713 NavigateToURL(shell(), url);
714 714
715 ExecuteJavascriptAndWaitForOk(call); 715 ExecuteJavascriptAndWaitForOk(call);
716 } 716 }
717 717
718 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, 718 IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
719 InvalidSourceIdInIFrameAndCloseInFailureCb) { 719 InvalidSourceIdInIFrameAndCloseInFailureCb) {
720 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 720 ASSERT_TRUE(embedded_test_server()->Start());
721 721
722 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 722 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
723 723
724 std::string call = 724 std::string call =
725 GenerateGetUserMediaWithMandatorySourceID( 725 GenerateGetUserMediaWithMandatorySourceID(
726 "getUserMediaInIframeAndCloseInFailureCb", "invalid", "invalid"); 726 "getUserMediaInIframeAndCloseInFailureCb", "invalid", "invalid");
727 NavigateToURL(shell(), url); 727 NavigateToURL(shell(), url);
728 728
729 ExecuteJavascriptAndWaitForOk(call); 729 ExecuteJavascriptAndWaitForOk(call);
730 } 730 }
(...skipping 27 matching lines...) Expand all
758 758
759 // Test fails under MSan, http://crbug.com/445745 759 // Test fails under MSan, http://crbug.com/445745
760 #if defined(MEMORY_SANITIZER) 760 #if defined(MEMORY_SANITIZER)
761 #define MAYBE_GetUserMediaConstraints DISABLED_GetUserMediaConstraints 761 #define MAYBE_GetUserMediaConstraints DISABLED_GetUserMediaConstraints
762 #else 762 #else
763 #define MAYBE_GetUserMediaConstraints GetUserMediaConstraints 763 #define MAYBE_GetUserMediaConstraints GetUserMediaConstraints
764 #endif 764 #endif
765 // This test calls getUserMedia in sequence with different constraints. 765 // This test calls getUserMedia in sequence with different constraints.
766 IN_PROC_BROWSER_TEST_P(WebRtcConstraintsBrowserTest, 766 IN_PROC_BROWSER_TEST_P(WebRtcConstraintsBrowserTest,
767 MAYBE_GetUserMediaConstraints) { 767 MAYBE_GetUserMediaConstraints) {
768 ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); 768 ASSERT_TRUE(embedded_test_server()->Start());
769 769
770 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); 770 GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
771 771
772 std::string call = GenerateGetUserMediaCall(kGetUserMediaAndStop, 772 std::string call = GenerateGetUserMediaCall(kGetUserMediaAndStop,
773 user_media().min_width, 773 user_media().min_width,
774 user_media().max_width, 774 user_media().max_width,
775 user_media().min_height, 775 user_media().min_height,
776 user_media().max_height, 776 user_media().max_height,
777 user_media().min_frame_rate, 777 user_media().min_frame_rate,
778 user_media().max_frame_rate); 778 user_media().max_frame_rate);
779 DVLOG(1) << "Calling getUserMedia: " << call; 779 DVLOG(1) << "Calling getUserMedia: " << call;
780 NavigateToURL(shell(), url); 780 NavigateToURL(shell(), url);
781 ExecuteJavascriptAndWaitForOk(call); 781 ExecuteJavascriptAndWaitForOk(call);
782 } 782 }
783 783
784 static const UserMediaSizes kAllUserMediaSizes[] = { 784 static const UserMediaSizes kAllUserMediaSizes[] = {
785 {320, 320, 180, 180, 10, 30}, 785 {320, 320, 180, 180, 10, 30},
786 {320, 320, 240, 240, 10, 30}, 786 {320, 320, 240, 240, 10, 30},
787 {640, 640, 360, 360, 10, 30}, 787 {640, 640, 360, 360, 10, 30},
788 {640, 640, 480, 480, 10, 30}, 788 {640, 640, 480, 480, 10, 30},
789 {960, 960, 720, 720, 10, 30}, 789 {960, 960, 720, 720, 10, 30},
790 {1280, 1280, 720, 720, 10, 30}}; 790 {1280, 1280, 720, 720, 10, 30}};
791 791
792 INSTANTIATE_TEST_CASE_P(UserMedia, 792 INSTANTIATE_TEST_CASE_P(UserMedia,
793 WebRtcConstraintsBrowserTest, 793 WebRtcConstraintsBrowserTest,
794 testing::ValuesIn(kAllUserMediaSizes)); 794 testing::ValuesIn(kAllUserMediaSizes));
795 795
796 } // namespace content 796 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/media/webrtc_browsertest.cc ('k') | content/browser/media/webrtc_internals_browsertest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698