| Index: chrome/browser/media/encrypted_media_istypesupported_browsertest.cc
|
| diff --git a/chrome/browser/media/encrypted_media_istypesupported_browsertest.cc b/chrome/browser/media/encrypted_media_istypesupported_browsertest.cc
|
| index 17f195ce844fb445b355f73a8866ab0438081d6e..4d9a0acc5d0c796187d1b22ee099a638323b5b14 100644
|
| --- a/chrome/browser/media/encrypted_media_istypesupported_browsertest.cc
|
| +++ b/chrome/browser/media/encrypted_media_istypesupported_browsertest.cc
|
| @@ -122,17 +122,22 @@ class EncryptedMediaIsTypeSupportedTest : public InProcessBrowserTest {
|
|
|
| avc3_codec_.push_back("avc3");
|
|
|
| - avc3_extended_codec_.push_back("avc3.64001f");
|
| + avc3_extended_codec_.push_back("avc3.64001F");
|
|
|
| aac_codec_.push_back("mp4a");
|
|
|
| avc1_and_aac_codecs_.push_back("avc1");
|
| avc1_and_aac_codecs_.push_back("mp4a");
|
|
|
| + avc3_and_aac_codecs_.push_back("avc3");
|
| + avc3_and_aac_codecs_.push_back("mp4a");
|
| +
|
| unknown_codec_.push_back("foo");
|
|
|
| mixed_codecs_.push_back("vorbis");
|
| mixed_codecs_.push_back("avc1");
|
| +
|
| + vp8_invalid_extension_codec_.push_back("vp8.1");
|
| }
|
|
|
| typedef std::vector<std::string> CodecVector;
|
| @@ -163,8 +168,14 @@ class EncryptedMediaIsTypeSupportedTest : public InProcessBrowserTest {
|
| const CodecVector& avc1_and_aac_codecs() const {
|
| return avc1_and_aac_codecs_;
|
| }
|
| + const CodecVector& avc3_and_aac_codecs() const {
|
| + return avc3_and_aac_codecs_;
|
| + }
|
| const CodecVector& unknown_codec() const { return unknown_codec_; }
|
| const CodecVector& mixed_codecs() const { return mixed_codecs_; }
|
| + const CodecVector& vp8_invalid_extension_codec() const {
|
| + return vp8_invalid_extension_codec_;
|
| + }
|
|
|
| // Update the command line to load |adapter_name| for
|
| // |pepper_type_for_key_system|.
|
| @@ -275,8 +286,10 @@ class EncryptedMediaIsTypeSupportedTest : public InProcessBrowserTest {
|
| CodecVector avc3_extended_codec_;
|
| CodecVector aac_codec_;
|
| CodecVector avc1_and_aac_codecs_;
|
| + CodecVector avc3_and_aac_codecs_;
|
| CodecVector unknown_codec_;
|
| CodecVector mixed_codecs_;
|
| + CodecVector vp8_invalid_extension_codec_;
|
| bool is_test_page_loaded_;
|
| bool is_pepper_cdm_registered_;
|
| };
|
| @@ -456,9 +469,13 @@ IN_PROC_BROWSER_TEST_F(EncryptedMediaIsTypeSupportedTest,
|
| EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| "video/webm", avc1_codec(), kPrefixedClearKey));
|
| EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| + "video/webm", avc3_codec(), kPrefixedClearKey));
|
| + EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| "video/webm", unknown_codec(), kPrefixedClearKey));
|
| EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| "video/webm", mixed_codecs(), kPrefixedClearKey));
|
| + EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| + "video/webm", vp8_invalid_extension_codec(), kPrefixedClearKey));
|
|
|
| // Valid audio types.
|
| EXPECT_TRUE(IsSupportedKeySystemWithMediaMimeType(
|
| @@ -496,6 +513,8 @@ IN_PROC_BROWSER_TEST_F(EncryptedMediaIsTypeSupportedTest,
|
| EXPECT_PROPRIETARY(IsSupportedKeySystemWithMediaMimeType(
|
| "video/mp4", avc3_codec(), kPrefixedClearKey));
|
| EXPECT_PROPRIETARY(IsSupportedKeySystemWithMediaMimeType(
|
| + "video/mp4", avc3_and_aac_codecs(), kPrefixedClearKey));
|
| + EXPECT_PROPRIETARY(IsSupportedKeySystemWithMediaMimeType(
|
| "video/mp4", aac_codec(), kPrefixedClearKey));
|
|
|
| // Extended codecs.
|
| @@ -504,8 +523,8 @@ IN_PROC_BROWSER_TEST_F(EncryptedMediaIsTypeSupportedTest,
|
| EXPECT_PROPRIETARY(IsSupportedKeySystemWithMediaMimeType(
|
| "video/mp4", avc3_extended_codec(), kPrefixedClearKey));
|
|
|
| - // Invalid codec format, but canPlayType() strips away the period.
|
| - EXPECT_PROPRIETARY(IsSupportedKeySystemWithMediaMimeType(
|
| + // Invalid codec format: profile parameter must be present after the period.
|
| + EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| "video/mp4", avc1_dot_codec(), kPrefixedClearKey));
|
|
|
| // Non-MP4 codecs.
|
| @@ -517,6 +536,8 @@ IN_PROC_BROWSER_TEST_F(EncryptedMediaIsTypeSupportedTest,
|
| "video/mp4", unknown_codec(), kPrefixedClearKey));
|
| EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| "video/mp4", mixed_codecs(), kPrefixedClearKey));
|
| + EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| + "video/mp4", vp8_invalid_extension_codec(), kPrefixedClearKey));
|
|
|
| // Valid audio types.
|
| EXPECT_PROPRIETARY(IsSupportedKeySystemWithMediaMimeType(
|
| @@ -641,9 +662,13 @@ IN_PROC_BROWSER_TEST_F(
|
| EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| "video/webm", avc1_codec(), kExternalClearKey));
|
| EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| + "video/webm", avc3_codec(), kExternalClearKey));
|
| + EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| "video/webm", unknown_codec(), kExternalClearKey));
|
| EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| "video/webm", mixed_codecs(), kExternalClearKey));
|
| + EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| + "video/webm", vp8_invalid_extension_codec(), kExternalClearKey));
|
|
|
| // Valid audio types.
|
| EXPECT_ECK(IsSupportedKeySystemWithMediaMimeType(
|
| @@ -682,6 +707,8 @@ IN_PROC_BROWSER_TEST_F(
|
| EXPECT_ECKPROPRIETARY(IsSupportedKeySystemWithMediaMimeType(
|
| "video/mp4", avc3_codec(), kExternalClearKey));
|
| EXPECT_ECKPROPRIETARY(IsSupportedKeySystemWithMediaMimeType(
|
| + "video/mp4", avc3_and_aac_codecs(), kExternalClearKey));
|
| + EXPECT_ECKPROPRIETARY(IsSupportedKeySystemWithMediaMimeType(
|
| "video/mp4", aac_codec(), kExternalClearKey));
|
|
|
| // Extended codecs.
|
| @@ -690,8 +717,8 @@ IN_PROC_BROWSER_TEST_F(
|
| EXPECT_ECKPROPRIETARY(IsSupportedKeySystemWithMediaMimeType(
|
| "video/mp4", avc3_extended_codec(), kExternalClearKey));
|
|
|
| - // Invalid codec format, but canPlayType() strips away the period.
|
| - EXPECT_ECKPROPRIETARY(IsSupportedKeySystemWithMediaMimeType(
|
| + // Invalid codec format: profile parameter must be present after the period.
|
| + EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| "video/mp4", avc1_dot_codec(), kExternalClearKey));
|
|
|
| // Non-MP4 codecs.
|
| @@ -703,6 +730,8 @@ IN_PROC_BROWSER_TEST_F(
|
| "video/mp4", unknown_codec(), kExternalClearKey));
|
| EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| "video/mp4", mixed_codecs(), kExternalClearKey));
|
| + EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| + "video/mp4", vp8_invalid_extension_codec(), kExternalClearKey));
|
|
|
| // Valid audio types.
|
| EXPECT_ECKPROPRIETARY(IsSupportedKeySystemWithMediaMimeType(
|
| @@ -717,6 +746,8 @@ IN_PROC_BROWSER_TEST_F(
|
| "audio/mp4", avc1_and_aac_codecs(), kExternalClearKey));
|
| EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| "audio/mp4", avc3_codec(), kExternalClearKey));
|
| + EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| + "audio/mp4", avc3_and_aac_codecs(), kExternalClearKey));
|
|
|
| // Non-MP4 codec.
|
| EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| @@ -831,9 +862,13 @@ IN_PROC_BROWSER_TEST_F(EncryptedMediaIsTypeSupportedWidevineTest,
|
| EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| "video/webm", avc1_codec(), kWidevineAlpha));
|
| EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| + "video/webm", avc3_codec(), kWidevineAlpha));
|
| + EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| "video/webm", unknown_codec(), kWidevineAlpha));
|
| EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| "video/webm", mixed_codecs(), kWidevineAlpha));
|
| + EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| + "video/webm", vp8_invalid_extension_codec(), kWidevineAlpha));
|
|
|
| // Valid audio types.
|
| EXPECT_WV(IsSupportedKeySystemWithMediaMimeType(
|
| @@ -870,6 +905,8 @@ IN_PROC_BROWSER_TEST_F(EncryptedMediaIsTypeSupportedWidevineTest,
|
| EXPECT_WVAVC1(IsSupportedKeySystemWithMediaMimeType(
|
| "video/mp4", avc3_codec(), kWidevineAlpha));
|
| EXPECT_WVAVC1AAC(IsSupportedKeySystemWithMediaMimeType(
|
| + "video/mp4", avc3_and_aac_codecs(), kWidevineAlpha));
|
| + EXPECT_WVAVC1AAC(IsSupportedKeySystemWithMediaMimeType(
|
| "video/mp4", aac_codec(), kWidevineAlpha));
|
|
|
| // Valid video types - parent key system.
|
| @@ -879,6 +916,10 @@ IN_PROC_BROWSER_TEST_F(EncryptedMediaIsTypeSupportedWidevineTest,
|
| "video/mp4", avc1_codec(), kWidevine));
|
| EXPECT_WVAVC1AAC(IsSupportedKeySystemWithMediaMimeType(
|
| "video/mp4", avc1_and_aac_codecs(), kWidevine));
|
| + EXPECT_WVAVC1(IsSupportedKeySystemWithMediaMimeType(
|
| + "video/mp4", avc3_codec(), kWidevine));
|
| + EXPECT_WVAVC1AAC(IsSupportedKeySystemWithMediaMimeType(
|
| + "video/mp4", avc3_and_aac_codecs(), kWidevine));
|
| EXPECT_WVAVC1AAC(IsSupportedKeySystemWithMediaMimeType(
|
| "video/mp4", aac_codec(), kWidevine));
|
|
|
| @@ -888,8 +929,8 @@ IN_PROC_BROWSER_TEST_F(EncryptedMediaIsTypeSupportedWidevineTest,
|
| EXPECT_WVAVC1(IsSupportedKeySystemWithMediaMimeType(
|
| "video/mp4", avc3_extended_codec(), kWidevineAlpha));
|
|
|
| - // Invalid codec format, but canPlayType() strips away the period.
|
| - EXPECT_WVAVC1(IsSupportedKeySystemWithMediaMimeType(
|
| + // Invalid codec format: profile paramter must be present after the period.
|
| + EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| "video/mp4", avc1_dot_codec(), kWidevineAlpha));
|
|
|
| // Non-MP4 codecs.
|
| @@ -901,6 +942,8 @@ IN_PROC_BROWSER_TEST_F(EncryptedMediaIsTypeSupportedWidevineTest,
|
| "video/mp4", unknown_codec(), kWidevineAlpha));
|
| EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| "video/mp4", mixed_codecs(), kWidevineAlpha));
|
| + EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| + "video/mp4", vp8_invalid_extension_codec(), kWidevineAlpha));
|
|
|
| // Valid audio types.
|
| EXPECT_WVMP4(IsSupportedKeySystemWithMediaMimeType(
|
| @@ -921,6 +964,8 @@ IN_PROC_BROWSER_TEST_F(EncryptedMediaIsTypeSupportedWidevineTest,
|
| "audio/mp4", avc1_and_aac_codecs(), kWidevineAlpha));
|
| EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| "audio/mp4", avc3_codec(), kWidevineAlpha));
|
| + EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
| + "audio/mp4", avc3_and_aac_codecs(), kWidevineAlpha));
|
|
|
| // Non-MP4 codec.
|
| EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
|
|
|