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

Side by Side Diff: chrome/browser/media/encrypted_media_browsertest.cc

Issue 357413002: Have media content and chrome browser tests load data from media/test/data (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: few merge fixes Created 6 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
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/memory/scoped_ptr.h" 6 #include "base/memory/scoped_ptr.h"
7 #include "base/path_service.h" 7 #include "base/path_service.h"
8 #include "base/strings/utf_string_conversions.h" 8 #include "base/strings/utf_string_conversions.h"
9 #include "base/win/windows_version.h" 9 #include "base/win/windows_version.h"
10 #include "chrome/browser/media/media_browsertest.h" 10 #include "chrome/browser/media/media_browsertest.h"
(...skipping 294 matching lines...) Expand 10 before | Expand all | Expand 10 after
305 // decrypt-and-decode mode. 305 // decrypt-and-decode mode.
306 class ECKEncryptedMediaTest : public EncryptedMediaTestBase { 306 class ECKEncryptedMediaTest : public EncryptedMediaTestBase {
307 public: 307 public:
308 // We use special |key_system| names to do non-playback related tests, e.g. 308 // We use special |key_system| names to do non-playback related tests, e.g.
309 // kExternalClearKeyFileIOTestKeySystem is used to test file IO. 309 // kExternalClearKeyFileIOTestKeySystem is used to test file IO.
310 void TestNonPlaybackCases(const std::string& key_system, 310 void TestNonPlaybackCases(const std::string& key_system,
311 const std::string& expected_title) { 311 const std::string& expected_title) {
312 // Since we do not test playback, arbitrarily choose a test file and source 312 // Since we do not test playback, arbitrarily choose a test file and source
313 // type. 313 // type.
314 RunEncryptedMediaTest(kDefaultEmePlayer, 314 RunEncryptedMediaTest(kDefaultEmePlayer,
315 "bear-a-enc_a.webm", 315 "bear-a_enc-a.webm",
316 kWebMAudioOnly, 316 kWebMAudioOnly,
317 key_system, 317 key_system,
318 SRC, 318 SRC,
319 PREFIXED, 319 PREFIXED,
320 kNoSessionToLoad, 320 kNoSessionToLoad,
321 false, 321 false,
322 expected_title); 322 expected_title);
323 } 323 }
324 324
325 protected: 325 protected:
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
372 const std::string& media_type) { 372 const std::string& media_type) {
373 RunSimpleEncryptedMediaTest(encrypted_media, 373 RunSimpleEncryptedMediaTest(encrypted_media,
374 media_type, 374 media_type,
375 CurrentKeySystem(), 375 CurrentKeySystem(),
376 CurrentSourceType(), 376 CurrentSourceType(),
377 CurrentEmeVersion()); 377 CurrentEmeVersion());
378 } 378 }
379 379
380 void RunInvalidResponseTest() { 380 void RunInvalidResponseTest() {
381 RunEncryptedMediaTest(kDefaultEmePlayer, 381 RunEncryptedMediaTest(kDefaultEmePlayer,
382 "bear-320x240-av-enc_av.webm", 382 "bear-320x240-av_enc-av.webm",
383 kWebMAudioVideo, 383 kWebMAudioVideo,
384 CurrentKeySystem(), 384 CurrentKeySystem(),
385 CurrentSourceType(), 385 CurrentSourceType(),
386 CurrentEmeVersion(), 386 CurrentEmeVersion(),
387 kNoSessionToLoad, 387 kNoSessionToLoad,
388 true, 388 true,
389 kEmeKeyError); 389 kEmeKeyError);
390 } 390 }
391 391
392 void TestFrameSizeChange() { 392 void TestFrameSizeChange() {
393 RunEncryptedMediaTest("encrypted_frame_size_change.html", 393 RunEncryptedMediaTest("encrypted_frame_size_change.html",
394 "frame_size_change-av-enc-v.webm", 394 "frame_size_change-av_enc-v.webm",
395 kWebMAudioVideo, 395 kWebMAudioVideo,
396 CurrentKeySystem(), 396 CurrentKeySystem(),
397 CurrentSourceType(), 397 CurrentSourceType(),
398 CurrentEmeVersion(), 398 CurrentEmeVersion(),
399 kNoSessionToLoad, 399 kNoSessionToLoad,
400 false, 400 false,
401 kEnded); 401 kEnded);
402 } 402 }
403 403
404 void TestConfigChange() { 404 void TestConfigChange() {
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
504 #if !defined(WIDEVINE_CDM_IS_COMPONENT) 504 #if !defined(WIDEVINE_CDM_IS_COMPONENT)
505 INSTANTIATE_TEST_CASE_P(MSE_Widevine, 505 INSTANTIATE_TEST_CASE_P(MSE_Widevine,
506 EncryptedMediaTest, 506 EncryptedMediaTest,
507 Combine(Values(kWidevineKeySystem), 507 Combine(Values(kWidevineKeySystem),
508 Values(MSE), 508 Values(MSE),
509 Values(UNPREFIXED))); 509 Values(UNPREFIXED)));
510 #endif // !defined(WIDEVINE_CDM_IS_COMPONENT) 510 #endif // !defined(WIDEVINE_CDM_IS_COMPONENT)
511 #endif // defined(WIDEVINE_CDM_AVAILABLE) 511 #endif // defined(WIDEVINE_CDM_AVAILABLE)
512 512
513 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, Playback_AudioOnly_WebM) { 513 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, Playback_AudioOnly_WebM) {
514 TestSimplePlayback("bear-a-enc_a.webm", kWebMAudioOnly); 514 TestSimplePlayback("bear-a_enc-a.webm", kWebMAudioOnly);
515 } 515 }
516 516
517 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, Playback_AudioClearVideo_WebM) { 517 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, Playback_AudioClearVideo_WebM) {
518 TestSimplePlayback("bear-320x240-av-enc_a.webm", kWebMAudioVideo); 518 TestSimplePlayback("bear-320x240-av_enc-a.webm", kWebMAudioVideo);
519 } 519 }
520 520
521 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, Playback_VideoAudio_WebM) { 521 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, Playback_VideoAudio_WebM) {
522 TestSimplePlayback("bear-320x240-av-enc_av.webm", kWebMAudioVideo); 522 TestSimplePlayback("bear-320x240-av_enc-av.webm", kWebMAudioVideo);
523 } 523 }
524 524
525 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, Playback_VideoOnly_WebM) { 525 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, Playback_VideoOnly_WebM) {
526 TestSimplePlayback("bear-320x240-v-enc_v.webm", kWebMVideoOnly); 526 TestSimplePlayback("bear-320x240-v_enc-v.webm", kWebMVideoOnly);
527 } 527 }
528 528
529 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, Playback_VideoClearAudio_WebM) { 529 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, Playback_VideoClearAudio_WebM) {
530 TestSimplePlayback("bear-320x240-av-enc_v.webm", kWebMAudioVideo); 530 TestSimplePlayback("bear-320x240-av_enc-v.webm", kWebMAudioVideo);
531 } 531 }
532 532
533 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, Playback_VP9Video_WebM) { 533 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, Playback_VP9Video_WebM) {
534 TestSimplePlayback("bear-320x240-v-vp9-enc_v.webm", kWebMVP9VideoOnly); 534 TestSimplePlayback("bear-320x240-v-vp9_enc-v.webm", kWebMVP9VideoOnly);
535 } 535 }
536 536
537 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, InvalidResponseKeyError) { 537 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, InvalidResponseKeyError) {
538 RunInvalidResponseTest(); 538 RunInvalidResponseTest();
539 } 539 }
540 540
541 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, ConfigChangeVideo) { 541 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, ConfigChangeVideo) {
542 if (CurrentSourceType() != MSE || !IsMSESupported()) { 542 if (CurrentSourceType() != MSE || !IsMSESupported()) {
543 VLOG(0) << "Skipping test - ConfigChange test requires MSE."; 543 VLOG(0) << "Skipping test - ConfigChange test requires MSE.";
544 return; 544 return;
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
580 return; 580 return;
581 } 581 }
582 TestSimplePlayback("bear-640x360-a_frag-cenc.mp4", kMP4AudioOnly); 582 TestSimplePlayback("bear-640x360-a_frag-cenc.mp4", kMP4AudioOnly);
583 } 583 }
584 #endif // defined(USE_PROPRIETARY_CODECS) 584 #endif // defined(USE_PROPRIETARY_CODECS)
585 585
586 #if defined(WIDEVINE_CDM_AVAILABLE) 586 #if defined(WIDEVINE_CDM_AVAILABLE)
587 // The parent key system cannot be used in generateKeyRequest. 587 // The parent key system cannot be used in generateKeyRequest.
588 IN_PROC_BROWSER_TEST_F(WVEncryptedMediaTest, ParentThrowsException_Prefixed) { 588 IN_PROC_BROWSER_TEST_F(WVEncryptedMediaTest, ParentThrowsException_Prefixed) {
589 RunEncryptedMediaTest(kDefaultEmePlayer, 589 RunEncryptedMediaTest(kDefaultEmePlayer,
590 "bear-a-enc_a.webm", 590 "bear-a_enc-a.webm",
591 kWebMAudioOnly, 591 kWebMAudioOnly,
592 "com.widevine", 592 "com.widevine",
593 MSE, 593 MSE,
594 PREFIXED, 594 PREFIXED,
595 kNoSessionToLoad, 595 kNoSessionToLoad,
596 false, 596 false,
597 kEmeNotSupportedError); 597 kEmeNotSupportedError);
598 } 598 }
599 599
600 // TODO(jrummell): http://crbug.com/349181 600 // TODO(jrummell): http://crbug.com/349181
601 // The parent key system cannot be used when creating MediaKeys. 601 // The parent key system cannot be used when creating MediaKeys.
602 IN_PROC_BROWSER_TEST_F(WVEncryptedMediaTest, ParentThrowsException) { 602 IN_PROC_BROWSER_TEST_F(WVEncryptedMediaTest, ParentThrowsException) {
603 RunEncryptedMediaTest(kDefaultEmePlayer, 603 RunEncryptedMediaTest(kDefaultEmePlayer,
604 "bear-a-enc_a.webm", 604 "bear-a_enc-a.webm",
605 kWebMAudioOnly, 605 kWebMAudioOnly,
606 "com.widevine", 606 "com.widevine",
607 MSE, 607 MSE,
608 UNPREFIXED, 608 UNPREFIXED,
609 kNoSessionToLoad, 609 kNoSessionToLoad,
610 false, 610 false,
611 kEmeNotSupportedError); 611 kEmeNotSupportedError);
612 } 612 }
613 #endif // defined(WIDEVINE_CDM_AVAILABLE) 613 #endif // defined(WIDEVINE_CDM_AVAILABLE)
614 614
(...skipping 18 matching lines...) Expand all
633 "plugin crash"); 633 "plugin crash");
634 } 634 }
635 635
636 IN_PROC_BROWSER_TEST_F(ECKEncryptedMediaTest, FileIOTest) { 636 IN_PROC_BROWSER_TEST_F(ECKEncryptedMediaTest, FileIOTest) {
637 TestNonPlaybackCases(kExternalClearKeyFileIOTestKeySystem, 637 TestNonPlaybackCases(kExternalClearKeyFileIOTestKeySystem,
638 kFileIOTestSuccess); 638 kFileIOTestSuccess);
639 } 639 }
640 640
641 IN_PROC_BROWSER_TEST_F(ECKEncryptedMediaTest, LoadLoadableSession) { 641 IN_PROC_BROWSER_TEST_F(ECKEncryptedMediaTest, LoadLoadableSession) {
642 RunEncryptedMediaTest(kDefaultEmePlayer, 642 RunEncryptedMediaTest(kDefaultEmePlayer,
643 "bear-320x240-v-enc_v.webm", 643 "bear-320x240-v_enc-v.webm",
644 kWebMVideoOnly, 644 kWebMVideoOnly,
645 kExternalClearKeyKeySystem, 645 kExternalClearKeyKeySystem,
646 SRC, 646 SRC,
647 PREFIXED, 647 PREFIXED,
648 kLoadableSession, 648 kLoadableSession,
649 false, 649 false,
650 kEnded); 650 kEnded);
651 } 651 }
652 652
653 IN_PROC_BROWSER_TEST_F(ECKEncryptedMediaTest, LoadUnknownSession) { 653 IN_PROC_BROWSER_TEST_F(ECKEncryptedMediaTest, LoadUnknownSession) {
654 // TODO(xhwang): Add a specific error for this failure, e.g. kSessionNotFound. 654 // TODO(xhwang): Add a specific error for this failure, e.g. kSessionNotFound.
655 RunEncryptedMediaTest(kDefaultEmePlayer, 655 RunEncryptedMediaTest(kDefaultEmePlayer,
656 "bear-320x240-v-enc_v.webm", 656 "bear-320x240-v_enc-v.webm",
657 kWebMVideoOnly, 657 kWebMVideoOnly,
658 kExternalClearKeyKeySystem, 658 kExternalClearKeyKeySystem,
659 SRC, 659 SRC,
660 PREFIXED, 660 PREFIXED,
661 kUnknownSession, 661 kUnknownSession,
662 false, 662 false,
663 kEmeKeyError); 663 kEmeKeyError);
664 } 664 }
665 #endif // defined(ENABLE_PEPPER_CDMS) 665 #endif // defined(ENABLE_PEPPER_CDMS)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698