summaryrefslogtreecommitdiff
path: root/chromium/content/browser/media/media_source_browsertest.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/content/browser/media/media_source_browsertest.cc')
-rw-r--r--chromium/content/browser/media/media_source_browsertest.cc57
1 files changed, 57 insertions, 0 deletions
diff --git a/chromium/content/browser/media/media_source_browsertest.cc b/chromium/content/browser/media/media_source_browsertest.cc
new file mode 100644
index 00000000000..bd119ddff07
--- /dev/null
+++ b/chromium/content/browser/media/media_source_browsertest.cc
@@ -0,0 +1,57 @@
+// Copyright (c) 2013 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "base/command_line.h"
+#include "content/browser/media/media_browsertest.h"
+#include "content/public/common/content_switches.h"
+
+// Common media types.
+static const char kWebMAudioOnly[] = "audio/webm; codecs=\"vorbis\"";
+static const char kWebMVideoOnly[] = "video/webm; codecs=\"vp8\"";
+static const char kWebMAudioVideo[] = "video/webm; codecs=\"vorbis, vp8\"";
+
+namespace content {
+
+class MediaSourceTest : public content::MediaBrowserTest {
+ public:
+ void TestSimplePlayback(const char* media_file, const char* media_type,
+ const char* expectation) {
+ std::vector<StringPair> query_params;
+ query_params.push_back(std::make_pair("mediafile", media_file));
+ query_params.push_back(std::make_pair("mediatype", media_type));
+ RunMediaTestPage("media_source_player.html", &query_params, expectation,
+ true);
+ }
+
+#if defined(OS_ANDROID)
+ virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE {
+ command_line->AppendSwitch(
+ switches::kDisableGestureRequirementForMediaPlayback);
+ }
+#endif
+};
+
+IN_PROC_BROWSER_TEST_F(MediaSourceTest, Playback_VideoAudio_WebM) {
+ TestSimplePlayback("bear-320x240.webm", kWebMAudioVideo, kEnded);
+}
+
+IN_PROC_BROWSER_TEST_F(MediaSourceTest, Playback_VideoOnly_WebM) {
+ TestSimplePlayback("bear-320x240-video-only.webm", kWebMVideoOnly, kEnded);
+}
+
+IN_PROC_BROWSER_TEST_F(MediaSourceTest, Playback_AudioOnly_WebM) {
+ TestSimplePlayback("bear-320x240-audio-only.webm", kWebMAudioOnly, kEnded);
+}
+
+IN_PROC_BROWSER_TEST_F(MediaSourceTest, Playback_Type_Error) {
+ TestSimplePlayback("bear-320x240-video-only.webm", kWebMAudioOnly, kError);
+}
+
+// Flaky test crbug.com/246308
+// Test changed to skip checks resulting in flakiness. Proper fix still needed.
+IN_PROC_BROWSER_TEST_F(MediaSourceTest, ConfigChangeVideo) {
+ RunMediaTestPage("mse_config_change.html", NULL, kEnded, true);
+}
+
+} // namespace content