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

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

Issue 23452025: Move EME key system knowledge from content/ to chrome/. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix test on Android Created 7 years, 3 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 (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 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/path_service.h" 6 #include "base/path_service.h"
7 #include "base/strings/utf_string_conversions.h" 7 #include "base/strings/utf_string_conversions.h"
8 #include "base/win/windows_version.h" 8 #include "base/win/windows_version.h"
9 #include "content/browser/media/media_browsertest.h" 9 #include "content/browser/media/media_browsertest.h"
10 #include "content/public/common/content_switches.h" 10 #include "content/public/common/content_switches.h"
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after
177 protected: 177 protected:
178 #if defined(ENABLE_PEPPER_CDMS) 178 #if defined(ENABLE_PEPPER_CDMS)
179 virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE { 179 virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE {
180 RegisterPepperCdm(command_line, kWidevineCdmAdapterFileName, 180 RegisterPepperCdm(command_line, kWidevineCdmAdapterFileName,
181 kWidevineKeySystem); 181 kWidevineKeySystem);
182 } 182 }
183 #endif // defined(ENABLE_PEPPER_CDMS) 183 #endif // defined(ENABLE_PEPPER_CDMS)
184 }; 184 };
185 #endif // defined(WIDEVINE_CDM_AVAILABLE) 185 #endif // defined(WIDEVINE_CDM_AVAILABLE)
186 186
187 #if 0 // TODO(shadi): Figure out what to do with these tests.
187 INSTANTIATE_TEST_CASE_P(ClearKey, EncryptedMediaTest, 188 INSTANTIATE_TEST_CASE_P(ClearKey, EncryptedMediaTest,
188 ::testing::Combine( 189 ::testing::Combine(
189 ::testing::Values(kClearKeyKeySystem), ::testing::Values(SRC, MSE))); 190 ::testing::Values(kClearKeyKeySystem), ::testing::Values(SRC, MSE)));
190 191
191 // External Clear Key is currently only used on platforms that use Pepper CDMs. 192 // External Clear Key is currently only used on platforms that use Pepper CDMs.
192 #if defined(ENABLE_PEPPER_CDMS) 193 #if defined(ENABLE_PEPPER_CDMS)
193 INSTANTIATE_TEST_CASE_P(ExternalClearKey, EncryptedMediaTest, 194 INSTANTIATE_TEST_CASE_P(ExternalClearKey, EncryptedMediaTest,
194 ::testing::Combine( 195 ::testing::Combine(
195 ::testing::Values(kExternalClearKeyKeySystem), 196 ::testing::Values(kExternalClearKeyKeySystem),
196 ::testing::Values(SRC, MSE))); 197 ::testing::Values(SRC, MSE)));
197 198
198 IN_PROC_BROWSER_TEST_F(EncryptedMediaTest, ConfigChangeVideo_ExternalClearKey) { 199 IN_PROC_BROWSER_TEST_F(EncryptedMediaTest, ConfigChangeVideo_ExternalClearKey) {
199 TestConfigChange(kExternalClearKeyKeySystem, kEnded); 200 TestConfigChange(kExternalClearKeyKeySystem, kEnded);
200 } 201 }
201 #endif // defined(ENABLE_PEPPER_CDMS) 202 #endif // defined(ENABLE_PEPPER_CDMS)
202 203
203 IN_PROC_BROWSER_TEST_F(EncryptedMediaTest, ConfigChangeVideo_ClearKey) { 204 IN_PROC_BROWSER_TEST_F(EncryptedMediaTest, ConfigChangeVideo_ClearKey) {
204 TestConfigChange(kClearKeyKeySystem, kEnded); 205 TestConfigChange(kClearKeyKeySystem, kEnded);
205 } 206 }
207 #endif // 0
206 208
207 IN_PROC_BROWSER_TEST_F(EncryptedMediaTest, InvalidKeySystem) { 209 IN_PROC_BROWSER_TEST_F(EncryptedMediaTest, InvalidKeySystem) {
208 TestMSESimplePlayback("bear-320x240-av-enc_av.webm", kWebMAudioVideo, 210 TestMSESimplePlayback("bear-320x240-av-enc_av.webm", kWebMAudioVideo,
209 "com.example.invalid", 211 "com.example.invalid",
210 "GENERATE_KEY_REQUEST_EXCEPTION"); 212 "GENERATE_KEY_REQUEST_EXCEPTION");
211 } 213 }
212 214
215 #if 0 // TODO(shadi): Figure out what to do with these tests.
213 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, Playback_AudioOnly_WebM) { 216 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, Playback_AudioOnly_WebM) {
214 TestSimplePlayback("bear-a-enc_a.webm", kWebMAudioOnly, GetParam(), kEnded); 217 TestSimplePlayback("bear-a-enc_a.webm", kWebMAudioOnly, GetParam(), kEnded);
215 } 218 }
216 219
217 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, Playback_AudioClearVideo_WebM) { 220 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, Playback_AudioClearVideo_WebM) {
218 TestSimplePlayback("bear-320x240-av-enc_a.webm", kWebMAudioVideo, GetParam(), 221 TestSimplePlayback("bear-320x240-av-enc_a.webm", kWebMAudioVideo, GetParam(),
219 kEnded); 222 kEnded);
220 } 223 }
221 224
222 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, Playback_VideoAudio_WebM) { 225 IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, Playback_VideoAudio_WebM) {
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
259 std::tr1::tuple<const char*, SrcType> test_params = GetParam(); 262 std::tr1::tuple<const char*, SrcType> test_params = GetParam();
260 // MP4 without MSE is not support yet, http://crbug.com/170793. 263 // MP4 without MSE is not support yet, http://crbug.com/170793.
261 if (std::tr1::get<1>(test_params) != MSE) { 264 if (std::tr1::get<1>(test_params) != MSE) {
262 LOG(INFO) << "Skipping test; Can only play MP4 encrypted streams by MSE."; 265 LOG(INFO) << "Skipping test; Can only play MP4 encrypted streams by MSE.";
263 return; 266 return;
264 } 267 }
265 TestMSESimplePlayback("bear-640x360-a_frag-cenc.mp4", kMP4AudioOnly, 268 TestMSESimplePlayback("bear-640x360-a_frag-cenc.mp4", kMP4AudioOnly,
266 std::tr1::get<0>(test_params), kEnded); 269 std::tr1::get<0>(test_params), kEnded);
267 } 270 }
268 #endif // defined(USE_PROPRIETARY_CODECS) 271 #endif // defined(USE_PROPRIETARY_CODECS)
272 #endif // 0
269 273
274 // TODO(shadi): Do we need both this and InvalidKeySystem?
270 IN_PROC_BROWSER_TEST_F(EncryptedMediaTest, UnknownKeySystemThrowsException) { 275 IN_PROC_BROWSER_TEST_F(EncryptedMediaTest, UnknownKeySystemThrowsException) {
271 RunEncryptedMediaTest("encrypted_media_player.html", "bear-a-enc_a.webm", 276 RunEncryptedMediaTest("encrypted_media_player.html", "bear-a-enc_a.webm",
272 kWebMAudioOnly, "com.example.foo", SRC, 277 kWebMAudioOnly, "com.example.foo", SRC,
273 "GENERATE_KEY_REQUEST_EXCEPTION"); 278 "GENERATE_KEY_REQUEST_EXCEPTION");
274 } 279 }
275 280
276 // Run only when WV CDM is available. 281 // Run only when WV CDM is available.
277 #if defined(WIDEVINE_CDM_AVAILABLE) 282 #if defined(WIDEVINE_CDM_AVAILABLE)
278 // The parent key system cannot be used in generateKeyRequest. 283 // The parent key system cannot be used in generateKeyRequest.
279 IN_PROC_BROWSER_TEST_F(EncryptedMediaTest, WVParentThrowsException) { 284 IN_PROC_BROWSER_TEST_F(EncryptedMediaTest, WVParentThrowsException) {
280 RunEncryptedMediaTest("encrypted_media_player.html", "bear-a-enc_a.webm", 285 RunEncryptedMediaTest("encrypted_media_player.html", "bear-a-enc_a.webm",
281 kWebMAudioOnly, "com.widevine", SRC, 286 kWebMAudioOnly, "com.widevine", SRC,
282 "GENERATE_KEY_REQUEST_EXCEPTION"); 287 "GENERATE_KEY_REQUEST_EXCEPTION");
283 } 288 }
284 289
290 #if 0 // TODO(shadi): Figure out what to do with these tests.
285 IN_PROC_BROWSER_TEST_F(WVEncryptedMediaTest, Playback_AudioOnly_WebM) { 291 IN_PROC_BROWSER_TEST_F(WVEncryptedMediaTest, Playback_AudioOnly_WebM) {
286 TestMSESimplePlayback("bear-a-enc_a.webm", kWebMAudioOnly, 292 TestMSESimplePlayback("bear-a-enc_a.webm", kWebMAudioOnly,
287 kWidevineKeySystem); 293 kWidevineKeySystem);
288 } 294 }
289 295
290 IN_PROC_BROWSER_TEST_F(WVEncryptedMediaTest, Playback_AudioClearVideo_WebM) { 296 IN_PROC_BROWSER_TEST_F(WVEncryptedMediaTest, Playback_AudioClearVideo_WebM) {
291 TestMSESimplePlayback("bear-320x240-av-enc_a.webm", kWebMAudioVideo, 297 TestMSESimplePlayback("bear-320x240-av-enc_a.webm", kWebMAudioVideo,
292 kWidevineKeySystem); 298 kWidevineKeySystem);
293 } 299 }
294 300
(...skipping 16 matching lines...) Expand all
311 IN_PROC_BROWSER_TEST_F(WVEncryptedMediaTest, Playback_VideoOnly_MP4) { 317 IN_PROC_BROWSER_TEST_F(WVEncryptedMediaTest, Playback_VideoOnly_MP4) {
312 TestMSESimplePlayback("bear-640x360-v_frag-cenc.mp4", kMP4VideoOnly, 318 TestMSESimplePlayback("bear-640x360-v_frag-cenc.mp4", kMP4VideoOnly,
313 kWidevineKeySystem); 319 kWidevineKeySystem);
314 } 320 }
315 321
316 IN_PROC_BROWSER_TEST_F(WVEncryptedMediaTest, Playback_AudioOnly_MP4) { 322 IN_PROC_BROWSER_TEST_F(WVEncryptedMediaTest, Playback_AudioOnly_MP4) {
317 TestMSESimplePlayback("bear-640x360-a_frag-cenc.mp4", kMP4AudioOnly, 323 TestMSESimplePlayback("bear-640x360-a_frag-cenc.mp4", kMP4AudioOnly,
318 kWidevineKeySystem); 324 kWidevineKeySystem);
319 } 325 }
320 #endif // defined(USE_PROPRIETARY_CODECS) 326 #endif // defined(USE_PROPRIETARY_CODECS)
327 #endif // 0
321 #endif // defined(WIDEVINE_CDM_AVAILABLE) 328 #endif // defined(WIDEVINE_CDM_AVAILABLE)
322 329
323 } // namespace content 330 } // namespace content
OLDNEW
« no previous file with comments | « chrome/renderer/media/chrome_key_systems.cc ('k') | content/renderer/media/crypto/key_systems.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698