Chromium Code Reviews| Index: media/filters/decrypting_audio_decoder_unittest.cc |
| diff --git a/media/filters/decrypting_audio_decoder_unittest.cc b/media/filters/decrypting_audio_decoder_unittest.cc |
| index bd12003503fb6eddf0ea896d095d277ced33f959..e5716fa9c91477f2a9220b9d749f396ebaa966f7 100644 |
| --- a/media/filters/decrypting_audio_decoder_unittest.cc |
| +++ b/media/filters/decrypting_audio_decoder_unittest.cc |
| @@ -281,15 +281,6 @@ TEST_F(DecryptingAudioDecoderTest, Initialize_Normal) { |
| Initialize(); |
| } |
|
ddorwin
2017/02/12 04:28:52
Isn't the removed test still true for this CL? IOW
xhwang
2017/02/14 23:59:33
But the DCHECK will fire. We don't test cases not
|
| -// Ensure that DecryptingAudioDecoder only accepts encrypted audio. |
| -TEST_F(DecryptingAudioDecoderTest, Initialize_UnencryptedAudioConfig) { |
| - AudioDecoderConfig config(kCodecVorbis, kSampleFormatPlanarF32, |
| - CHANNEL_LAYOUT_STEREO, kSampleRate, |
| - EmptyExtraData(), Unencrypted()); |
| - |
| - InitializeAndExpectResult(config, false); |
| -} |
| - |
| // Ensure decoder handles invalid audio configs without crashing. |
| TEST_F(DecryptingAudioDecoderTest, Initialize_InvalidAudioConfig) { |
| AudioDecoderConfig config(kUnknownAudioCodec, kUnknownSampleFormat, |
| @@ -368,8 +359,8 @@ TEST_F(DecryptingAudioDecoderTest, DecryptAndDecode_EndOfStream) { |
| EnterEndOfStreamState(); |
| } |
| -// Test reinitializing decode with a new config |
| -TEST_F(DecryptingAudioDecoderTest, Reinitialize_ConfigChange) { |
| +// Test reinitializing decode with a new encrypted config. |
| +TEST_F(DecryptingAudioDecoderTest, Reinitialize_EncryptedToEncrypted) { |
| Initialize(); |
| EXPECT_CALL(*decryptor_, InitializeAudioDecoder(_, _)) |
| @@ -389,6 +380,28 @@ TEST_F(DecryptingAudioDecoderTest, Reinitialize_ConfigChange) { |
| base::RunLoop().RunUntilIdle(); |
| } |
| +// Test reinitializing decode with a new clear config. |
| +TEST_F(DecryptingAudioDecoderTest, Reinitialize_EncryptedToClear) { |
| + Initialize(); |
| + |
| + EXPECT_CALL(*decryptor_, InitializeAudioDecoder(_, _)) |
| + .Times(AtMost(1)) |
| + .WillOnce(RunCallback<1>(true)); |
| + |
| + // The new config is different from the initial config in bits-per-channel, |
| + // channel layout and samples_per_second. |
| + AudioDecoderConfig new_config(kCodecVorbis, kSampleFormatPlanarS16, |
| + CHANNEL_LAYOUT_5_1, 88200, EmptyExtraData(), |
| + Unencrypted()); |
| + EXPECT_NE(new_config.bits_per_channel(), config_.bits_per_channel()); |
| + EXPECT_NE(new_config.channel_layout(), config_.channel_layout()); |
| + EXPECT_NE(new_config.samples_per_second(), config_.samples_per_second()); |
| + EXPECT_FALSE(new_config.is_encrypted()); |
|
ddorwin
2017/02/12 04:28:52
ASSERT? This would be a code bug.
xhwang
2017/02/14 23:59:33
Done.
|
| + |
| + ReinitializeConfigChange(new_config); |
| + base::RunLoop().RunUntilIdle(); |
| +} |
| + |
| // Test the case where the a key is added when the decryptor is in |
| // kWaitingForKey state. |
| TEST_F(DecryptingAudioDecoderTest, KeyAdded_DuringWaitingForKey) { |