| Index: chrome/browser/media/encrypted_media_browsertest.cc
|
| diff --git a/chrome/browser/media/encrypted_media_browsertest.cc b/chrome/browser/media/encrypted_media_browsertest.cc
|
| index 93d4710081fcce1db9cb497eeeb51d83b39b2bc4..61ae59759152180f1632335f098d049dea1e45e6 100644
|
| --- a/chrome/browser/media/encrypted_media_browsertest.cc
|
| +++ b/chrome/browser/media/encrypted_media_browsertest.cc
|
| @@ -55,6 +55,8 @@ const char kExternalClearKeyPlatformVerificationTestKeySystem[] =
|
| "org.chromium.externalclearkey.platformverificationtest";
|
| const char kExternalClearKeyCrashKeySystem[] =
|
| "org.chromium.externalclearkey.crash";
|
| +const char kExternalClearKeyCloseOnCrashKeySystem[] =
|
| + "org.chromium.externalclearkey.closeoncrash";
|
|
|
| // Supported media types.
|
| const char kWebMVorbisAudioOnly[] = "audio/webm; codecs=\"vorbis\"";
|
| @@ -83,6 +85,7 @@ const char kEmeUpdateFailed[] = "EME_UPDATE_FAILED";
|
| const char kEmeErrorEvent[] = "EME_ERROR_EVENT";
|
| const char kEmeMessageUnexpectedType[] = "EME_MESSAGE_UNEXPECTED_TYPE";
|
| const char kEmeRenewalMissingHeader[] = "EME_RENEWAL_MISSING_HEADER";
|
| +const char kEmeSessionClosed[] = "SESSION_CLOSED";
|
|
|
| const char kDefaultEmePlayer[] = "eme_player.html";
|
|
|
| @@ -626,6 +629,22 @@ IN_PROC_BROWSER_TEST_F(ECKEncryptedMediaTest, CDMExpectedCrash) {
|
| "Failing test due to plugin crash.");
|
| }
|
|
|
| +// When CDM crashes, all open sessions should be closed.
|
| +IN_PROC_BROWSER_TEST_F(ECKEncryptedMediaTest, CDMCloseSessionsOnCrash) {
|
| + IgnorePluginCrash();
|
| + TestNonPlaybackCases(kExternalClearKeyCloseOnCrashKeySystem,
|
| + kEmeSessionClosed);
|
| +}
|
| +
|
| +// Testing that the media browser test does fail on plugin crash.
|
| +IN_PROC_BROWSER_TEST_F(ECKEncryptedMediaTest, CDMCloseSessionsExpectedCrash) {
|
| + // Plugin crash is not ignored by default, the test is expected to fail.
|
| + EXPECT_NONFATAL_FAILURE(
|
| + TestNonPlaybackCases(kExternalClearKeyCloseOnCrashKeySystem,
|
| + kEmeSessionClosed),
|
| + "Failing test due to plugin crash.");
|
| +}
|
| +
|
| IN_PROC_BROWSER_TEST_F(ECKEncryptedMediaTest, FileIOTest) {
|
| TestNonPlaybackCases(kExternalClearKeyFileIOTestKeySystem, kUnitTestSuccess);
|
| }
|
|
|