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

Side by Side Diff: talk/app/webrtc/videosource_unittest.cc

Issue 1430433004: Replace rtc::cricket::Settable with rtc::Maybe (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.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
« no previous file with comments | « talk/app/webrtc/videosource.cc ('k') | talk/app/webrtc/webrtcsession.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * libjingle 2 * libjingle
3 * Copyright 2012 Google Inc. 3 * Copyright 2012 Google Inc.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met: 6 * modification, are permitted provided that the following conditions are met:
7 * 7 *
8 * 1. Redistributions of source code must retain the above copyright notice, 8 * 1. Redistributions of source code must retain the above copyright notice,
9 * this list of conditions and the following disclaimer. 9 * this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright notice, 10 * 2. Redistributions in binary form must reproduce the above copyright notice,
(...skipping 374 matching lines...) Expand 10 before | Expand all | Expand 10 after
385 EXPECT_EQ_WAIT(MediaSourceInterface::kLive, state_observer_->state(), 385 EXPECT_EQ_WAIT(MediaSourceInterface::kLive, state_observer_->state(),
386 kMaxWaitMs); 386 kMaxWaitMs);
387 } 387 }
388 388
389 TEST_F(VideoSourceTest, SetValidOptionValues) { 389 TEST_F(VideoSourceTest, SetValidOptionValues) {
390 FakeConstraints constraints; 390 FakeConstraints constraints;
391 constraints.AddMandatory(MediaConstraintsInterface::kNoiseReduction, "false"); 391 constraints.AddMandatory(MediaConstraintsInterface::kNoiseReduction, "false");
392 392
393 CreateVideoSource(&constraints); 393 CreateVideoSource(&constraints);
394 394
395 bool value = true; 395 EXPECT_EQ(rtc::Maybe<bool>(false), source_->options()->video_noise_reduction);
396 EXPECT_TRUE(source_->options()->video_noise_reduction.Get(&value));
397 EXPECT_FALSE(value);
398 } 396 }
399 397
400 TEST_F(VideoSourceTest, OptionNotSet) { 398 TEST_F(VideoSourceTest, OptionNotSet) {
401 FakeConstraints constraints; 399 FakeConstraints constraints;
402 CreateVideoSource(&constraints); 400 CreateVideoSource(&constraints);
403 bool value; 401 EXPECT_EQ(rtc::Maybe<bool>(), source_->options()->video_noise_reduction);
404 EXPECT_FALSE(source_->options()->video_noise_reduction.Get(&value));
405 } 402 }
406 403
407 TEST_F(VideoSourceTest, MandatoryOptionOverridesOptional) { 404 TEST_F(VideoSourceTest, MandatoryOptionOverridesOptional) {
408 FakeConstraints constraints; 405 FakeConstraints constraints;
409 constraints.AddMandatory( 406 constraints.AddMandatory(
410 MediaConstraintsInterface::kNoiseReduction, true); 407 MediaConstraintsInterface::kNoiseReduction, true);
411 constraints.AddOptional( 408 constraints.AddOptional(
412 MediaConstraintsInterface::kNoiseReduction, false); 409 MediaConstraintsInterface::kNoiseReduction, false);
413 410
414 CreateVideoSource(&constraints); 411 CreateVideoSource(&constraints);
415 412
416 bool value = false; 413 EXPECT_EQ(rtc::Maybe<bool>(true), source_->options()->video_noise_reduction);
417 EXPECT_TRUE(source_->options()->video_noise_reduction.Get(&value));
418 EXPECT_TRUE(value);
419 } 414 }
420 415
421 TEST_F(VideoSourceTest, InvalidOptionKeyOptional) { 416 TEST_F(VideoSourceTest, InvalidOptionKeyOptional) {
422 FakeConstraints constraints; 417 FakeConstraints constraints;
423 constraints.AddOptional( 418 constraints.AddOptional(
424 MediaConstraintsInterface::kNoiseReduction, false); 419 MediaConstraintsInterface::kNoiseReduction, false);
425 constraints.AddOptional("invalidKey", false); 420 constraints.AddOptional("invalidKey", false);
426 421
427 CreateVideoSource(&constraints); 422 CreateVideoSource(&constraints);
428 423
429 EXPECT_EQ_WAIT(MediaSourceInterface::kLive, state_observer_->state(), 424 EXPECT_EQ_WAIT(MediaSourceInterface::kLive, state_observer_->state(),
430 kMaxWaitMs); 425 kMaxWaitMs);
431 bool value = true; 426 EXPECT_EQ(rtc::Maybe<bool>(false), source_->options()->video_noise_reduction);
432 EXPECT_TRUE(source_->options()->video_noise_reduction.Get(&value));
433 EXPECT_FALSE(value);
434 } 427 }
435 428
436 TEST_F(VideoSourceTest, InvalidOptionKeyMandatory) { 429 TEST_F(VideoSourceTest, InvalidOptionKeyMandatory) {
437 FakeConstraints constraints; 430 FakeConstraints constraints;
438 constraints.AddMandatory( 431 constraints.AddMandatory(
439 MediaConstraintsInterface::kNoiseReduction, false); 432 MediaConstraintsInterface::kNoiseReduction, false);
440 constraints.AddMandatory("invalidKey", false); 433 constraints.AddMandatory("invalidKey", false);
441 434
442 CreateVideoSource(&constraints); 435 CreateVideoSource(&constraints);
443 436
444 EXPECT_EQ_WAIT(MediaSourceInterface::kEnded, state_observer_->state(), 437 EXPECT_EQ_WAIT(MediaSourceInterface::kEnded, state_observer_->state(),
445 kMaxWaitMs); 438 kMaxWaitMs);
446 bool value; 439 EXPECT_EQ(rtc::Maybe<bool>(), source_->options()->video_noise_reduction);
447 EXPECT_FALSE(source_->options()->video_noise_reduction.Get(&value));
448 } 440 }
449 441
450 TEST_F(VideoSourceTest, InvalidOptionValueOptional) { 442 TEST_F(VideoSourceTest, InvalidOptionValueOptional) {
451 FakeConstraints constraints; 443 FakeConstraints constraints;
452 constraints.AddOptional( 444 constraints.AddOptional(
453 MediaConstraintsInterface::kNoiseReduction, "not a boolean"); 445 MediaConstraintsInterface::kNoiseReduction, "not a boolean");
454 446
455 CreateVideoSource(&constraints); 447 CreateVideoSource(&constraints);
456 448
457 EXPECT_EQ_WAIT(MediaSourceInterface::kLive, state_observer_->state(), 449 EXPECT_EQ_WAIT(MediaSourceInterface::kLive, state_observer_->state(),
458 kMaxWaitMs); 450 kMaxWaitMs);
459 bool value = false; 451 EXPECT_EQ(rtc::Maybe<bool>(), source_->options()->video_noise_reduction);
460 EXPECT_FALSE(source_->options()->video_noise_reduction.Get(&value));
461 } 452 }
462 453
463 TEST_F(VideoSourceTest, InvalidOptionValueMandatory) { 454 TEST_F(VideoSourceTest, InvalidOptionValueMandatory) {
464 FakeConstraints constraints; 455 FakeConstraints constraints;
465 // Optional constraints should be ignored if the mandatory constraints fail. 456 // Optional constraints should be ignored if the mandatory constraints fail.
466 constraints.AddOptional( 457 constraints.AddOptional(
467 MediaConstraintsInterface::kNoiseReduction, "false"); 458 MediaConstraintsInterface::kNoiseReduction, "false");
468 // Values are case-sensitive and must be all lower-case. 459 // Values are case-sensitive and must be all lower-case.
469 constraints.AddMandatory( 460 constraints.AddMandatory(
470 MediaConstraintsInterface::kNoiseReduction, "True"); 461 MediaConstraintsInterface::kNoiseReduction, "True");
471 462
472 CreateVideoSource(&constraints); 463 CreateVideoSource(&constraints);
473 464
474 EXPECT_EQ_WAIT(MediaSourceInterface::kEnded, state_observer_->state(), 465 EXPECT_EQ_WAIT(MediaSourceInterface::kEnded, state_observer_->state(),
475 kMaxWaitMs); 466 kMaxWaitMs);
476 bool value; 467 EXPECT_EQ(rtc::Maybe<bool>(), source_->options()->video_noise_reduction);
477 EXPECT_FALSE(source_->options()->video_noise_reduction.Get(&value));
478 } 468 }
479 469
480 TEST_F(VideoSourceTest, MixedOptionsAndConstraints) { 470 TEST_F(VideoSourceTest, MixedOptionsAndConstraints) {
481 FakeConstraints constraints; 471 FakeConstraints constraints;
482 constraints.AddMandatory(MediaConstraintsInterface::kMaxWidth, 352); 472 constraints.AddMandatory(MediaConstraintsInterface::kMaxWidth, 352);
483 constraints.AddMandatory(MediaConstraintsInterface::kMaxHeight, 288); 473 constraints.AddMandatory(MediaConstraintsInterface::kMaxHeight, 288);
484 constraints.AddOptional(MediaConstraintsInterface::kMaxFrameRate, 5); 474 constraints.AddOptional(MediaConstraintsInterface::kMaxFrameRate, 5);
485 475
486 constraints.AddMandatory( 476 constraints.AddMandatory(
487 MediaConstraintsInterface::kNoiseReduction, false); 477 MediaConstraintsInterface::kNoiseReduction, false);
488 constraints.AddOptional( 478 constraints.AddOptional(
489 MediaConstraintsInterface::kNoiseReduction, true); 479 MediaConstraintsInterface::kNoiseReduction, true);
490 480
491 CreateVideoSource(&constraints); 481 CreateVideoSource(&constraints);
492 EXPECT_EQ_WAIT(MediaSourceInterface::kLive, state_observer_->state(), 482 EXPECT_EQ_WAIT(MediaSourceInterface::kLive, state_observer_->state(),
493 kMaxWaitMs); 483 kMaxWaitMs);
494 const cricket::VideoFormat* format = capturer_->GetCaptureFormat(); 484 const cricket::VideoFormat* format = capturer_->GetCaptureFormat();
495 ASSERT_TRUE(format != NULL); 485 ASSERT_TRUE(format != NULL);
496 EXPECT_EQ(352, format->width); 486 EXPECT_EQ(352, format->width);
497 EXPECT_EQ(288, format->height); 487 EXPECT_EQ(288, format->height);
498 EXPECT_EQ(30, format->framerate()); 488 EXPECT_EQ(30, format->framerate());
499 489
500 bool value = true; 490 EXPECT_EQ(rtc::Maybe<bool>(false), source_->options()->video_noise_reduction);
501 EXPECT_TRUE(source_->options()->video_noise_reduction.Get(&value));
502 EXPECT_FALSE(value);
503 } 491 }
504 492
505 // Tests that the source starts video with the default resolution for 493 // Tests that the source starts video with the default resolution for
506 // screencast if no constraint is set. 494 // screencast if no constraint is set.
507 TEST_F(VideoSourceTest, ScreencastResolutionNoConstraint) { 495 TEST_F(VideoSourceTest, ScreencastResolutionNoConstraint) {
508 capturer_->TestWithoutCameraFormats(); 496 capturer_->TestWithoutCameraFormats();
509 capturer_->SetScreencast(true); 497 capturer_->SetScreencast(true);
510 498
511 CreateVideoSource(); 499 CreateVideoSource();
512 EXPECT_EQ_WAIT(MediaSourceInterface::kLive, state_observer_->state(), 500 EXPECT_EQ_WAIT(MediaSourceInterface::kLive, state_observer_->state(),
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
553 constraints.AddOptional(MediaConstraintsInterface::kMaxFrameRate, 0.5); 541 constraints.AddOptional(MediaConstraintsInterface::kMaxFrameRate, 0.5);
554 542
555 CreateVideoSource(&constraints); 543 CreateVideoSource(&constraints);
556 EXPECT_EQ_WAIT(MediaSourceInterface::kLive, state_observer_->state(), 544 EXPECT_EQ_WAIT(MediaSourceInterface::kLive, state_observer_->state(),
557 kMaxWaitMs); 545 kMaxWaitMs);
558 const cricket::VideoFormat* format = capturer_->GetCaptureFormat(); 546 const cricket::VideoFormat* format = capturer_->GetCaptureFormat();
559 ASSERT_TRUE(format != NULL); 547 ASSERT_TRUE(format != NULL);
560 EXPECT_EQ(30, format->framerate()); 548 EXPECT_EQ(30, format->framerate());
561 } 549 }
562 550
OLDNEW
« no previous file with comments | « talk/app/webrtc/videosource.cc ('k') | talk/app/webrtc/webrtcsession.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698