Commit 8fd42c9b authored by Guido Urdaneta's avatar Guido Urdaneta Committed by Commit Bot

Parameterize WebRtcGetUserMediaBrowserTest

This allows running with the audio service in and out of process.

Bug: 843961
Change-Id: I205c1b78997f5cdf40705b8100d90fb08e176fd5
Reviewed-on: https://chromium-review.googlesource.com/1064063
Commit-Queue: Guido Urdaneta <guidou@chromium.org>
Reviewed-by: default avatarMax Morin <maxmorin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#559512}
parent 5aab0f4c
...@@ -26,6 +26,7 @@ ...@@ -26,6 +26,7 @@
#include "media/audio/fake_audio_input_stream.h" #include "media/audio/fake_audio_input_stream.h"
#include "media/base/media_switches.h" #include "media/base/media_switches.h"
#include "net/test/embedded_test_server/embedded_test_server.h" #include "net/test/embedded_test_server/embedded_test_server.h"
#include "testing/gtest/include/gtest/gtest-param-test.h"
#if defined(OS_WIN) #if defined(OS_WIN)
#include "base/win/windows_version.h" #include "base/win/windows_version.h"
...@@ -97,11 +98,22 @@ bool VerifyDisableLocalEcho(bool expect_value, ...@@ -97,11 +98,22 @@ bool VerifyDisableLocalEcho(bool expect_value,
namespace content { namespace content {
class WebRtcGetUserMediaBrowserTest : public WebRtcContentBrowserTestBase { class WebRtcGetUserMediaBrowserTest : public WebRtcContentBrowserTestBase,
public testing::WithParamInterface<bool> {
public: public:
WebRtcGetUserMediaBrowserTest() { WebRtcGetUserMediaBrowserTest() {
// Automatically grant device permission. // Automatically grant device permission.
AppendUseFakeUIForMediaStreamFlag(); AppendUseFakeUIForMediaStreamFlag();
std::vector<base::Feature> audio_service_oop_features = {
features::kAudioServiceAudioStreams,
features::kAudioServiceOutOfProcess};
if (GetParam()) {
// Force audio service out of process to enabled.
audio_service_features_.InitWithFeatures(audio_service_oop_features, {});
} else {
// Force audio service out of process to disabled.
audio_service_features_.InitWithFeatures({}, audio_service_oop_features);
}
} }
~WebRtcGetUserMediaBrowserTest() override {} ~WebRtcGetUserMediaBrowserTest() override {}
...@@ -161,24 +173,9 @@ class WebRtcGetUserMediaBrowserTest : public WebRtcContentBrowserTestBase { ...@@ -161,24 +173,9 @@ class WebRtcGetUserMediaBrowserTest : public WebRtcContentBrowserTestBase {
ASSERT_FALSE(audio_ids->empty()); ASSERT_FALSE(audio_ids->empty());
ASSERT_FALSE(video_ids->empty()); ASSERT_FALSE(video_ids->empty());
} }
};
// Muting tests doesn't work with the out of process audio service, so we need
// another test fixture to force the audio service to be in process.
// TODO(https://crbug.com/843490): Figure out a nicer way to do this.
class WebRtcGetUserMediaBrowserTestWithAudioServiceForcedIntoBrowserProcess
: public WebRtcGetUserMediaBrowserTest {
public:
WebRtcGetUserMediaBrowserTestWithAudioServiceForcedIntoBrowserProcess() {
disable_out_of_process_audio.InitAndDisableFeature(
features::kAudioServiceOutOfProcess);
}
~WebRtcGetUserMediaBrowserTestWithAudioServiceForcedIntoBrowserProcess()
override {}
private: private:
base::test::ScopedFeatureList disable_out_of_process_audio; base::test::ScopedFeatureList audio_service_features_;
}; };
// These tests will all make a getUserMedia call with different constraints and // These tests will all make a getUserMedia call with different constraints and
...@@ -191,7 +188,7 @@ class WebRtcGetUserMediaBrowserTestWithAudioServiceForcedIntoBrowserProcess ...@@ -191,7 +188,7 @@ class WebRtcGetUserMediaBrowserTestWithAudioServiceForcedIntoBrowserProcess
#else #else
#define MAYBE_GetVideoStreamAndStop GetVideoStreamAndStop #define MAYBE_GetVideoStreamAndStop GetVideoStreamAndStop
#endif #endif
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
MAYBE_GetVideoStreamAndStop) { MAYBE_GetVideoStreamAndStop) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -210,7 +207,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -210,7 +207,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
#define MAYBE_RenderSameTrackMediastreamAndStop \ #define MAYBE_RenderSameTrackMediastreamAndStop \
RenderSameTrackMediastreamAndStop RenderSameTrackMediastreamAndStop
#endif #endif
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
MAYBE_RenderSameTrackMediastreamAndStop) { MAYBE_RenderSameTrackMediastreamAndStop) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -222,7 +219,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -222,7 +219,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
kRenderSameTrackMediastreamAndStop)); kRenderSameTrackMediastreamAndStop));
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
RenderClonedMediastreamAndStop) { RenderClonedMediastreamAndStop) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -235,7 +232,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -235,7 +232,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
kRenderClonedMediastreamAndStop)); kRenderClonedMediastreamAndStop));
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
kRenderClonedTrackMediastreamAndStop) { kRenderClonedTrackMediastreamAndStop) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -247,7 +244,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -247,7 +244,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
kRenderClonedTrackMediastreamAndStop)); kRenderClonedTrackMediastreamAndStop));
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
kRenderDuplicatedMediastreamAndStop) { kRenderDuplicatedMediastreamAndStop) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -259,7 +256,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -259,7 +256,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
kRenderDuplicatedMediastreamAndStop)); kRenderDuplicatedMediastreamAndStop));
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
GetAudioAndVideoStreamAndStop) { GetAudioAndVideoStreamAndStop) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -270,7 +267,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -270,7 +267,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
"%s({video: true, audio: true});", kGetUserMediaAndStop)); "%s({video: true, audio: true});", kGetUserMediaAndStop));
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
GetAudioAndVideoStreamAndClone) { GetAudioAndVideoStreamAndClone) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -281,7 +278,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -281,7 +278,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
} }
// TODO(crbug.com/803516) : Flaky on all platforms. // TODO(crbug.com/803516) : Flaky on all platforms.
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
DISABLED_RenderVideoTrackInMultipleTagsAndPause) { DISABLED_RenderVideoTrackInMultipleTagsAndPause) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -299,7 +296,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -299,7 +296,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
#define MAYBE_GetUserMediaWithMandatorySourceID \ #define MAYBE_GetUserMediaWithMandatorySourceID \
GetUserMediaWithMandatorySourceID GetUserMediaWithMandatorySourceID
#endif #endif
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
MAYBE_GetUserMediaWithMandatorySourceID) { MAYBE_GetUserMediaWithMandatorySourceID) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -325,7 +322,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -325,7 +322,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
} }
#undef MAYBE_GetUserMediaWithMandatorySourceID #undef MAYBE_GetUserMediaWithMandatorySourceID
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
GetUserMediaWithInvalidMandatorySourceID) { GetUserMediaWithInvalidMandatorySourceID) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -357,7 +354,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -357,7 +354,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
kGetUserMediaAndExpectFailure, "", video_ids[0]))); kGetUserMediaAndExpectFailure, "", video_ids[0])));
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
GetUserMediaWithInvalidOptionalSourceID) { GetUserMediaWithInvalidOptionalSourceID) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -390,8 +387,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -390,8 +387,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
video_ids[0]))); video_ids[0])));
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest, TwoGetUserMediaAndStop) {
TwoGetUserMediaAndStop) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
...@@ -401,7 +397,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -401,7 +397,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
"twoGetUserMediaAndStop({video: true, audio: true});"); "twoGetUserMediaAndStop({video: true, audio: true});");
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
TwoGetUserMediaWithEqualConstraints) { TwoGetUserMediaWithEqualConstraints) {
std::string constraints1 = "{video: true, audio: true}"; std::string constraints1 = "{video: true, audio: true}";
const std::string& constraints2 = constraints1; const std::string& constraints2 = constraints1;
...@@ -411,7 +407,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -411,7 +407,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
expected_result); expected_result);
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
TwoGetUserMediaWithSecondVideoCropped) { TwoGetUserMediaWithSecondVideoCropped) {
std::string constraints1 = "{video: true}"; std::string constraints1 = "{video: true}";
std::string constraints2 = std::string constraints2 =
...@@ -429,7 +425,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -429,7 +425,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
#define MAYBE_TwoGetUserMediaWithFirstHdSecondVga \ #define MAYBE_TwoGetUserMediaWithFirstHdSecondVga \
TwoGetUserMediaWithFirstHdSecondVga TwoGetUserMediaWithFirstHdSecondVga
#endif #endif
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
MAYBE_TwoGetUserMediaWithFirstHdSecondVga) { MAYBE_TwoGetUserMediaWithFirstHdSecondVga) {
std::string constraints1 = std::string constraints1 =
"{video: {width : {exact: 1280}, height: {exact: 720}}}"; "{video: {width : {exact: 1280}, height: {exact: 720}}}";
...@@ -442,7 +438,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -442,7 +438,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
// Timing out on Windows 7 bot: http://crbug.com/443294 // Timing out on Windows 7 bot: http://crbug.com/443294
// Flaky: http://crbug.com/660656; possible the test is too perf sensitive. // Flaky: http://crbug.com/660656; possible the test is too perf sensitive.
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
DISABLED_TwoGetUserMediaWithFirst1080pSecondVga) { DISABLED_TwoGetUserMediaWithFirst1080pSecondVga) {
std::string constraints1 = std::string constraints1 =
"{video: {mandatory: {maxWidth:1920 , minWidth:1920 , maxHeight: 1080, " "{video: {mandatory: {maxWidth:1920 , minWidth:1920 , maxHeight: 1080, "
...@@ -454,7 +450,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -454,7 +450,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
expected_result); expected_result);
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
GetUserMediaWithTooHighVideoConstraintsValues) { GetUserMediaWithTooHighVideoConstraintsValues) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -473,7 +469,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -473,7 +469,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
EXPECT_EQ("OverconstrainedError", ExecuteJavascriptAndReturnResult(call)); EXPECT_EQ("OverconstrainedError", ExecuteJavascriptAndReturnResult(call));
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
GetUserMediaFailToAccessAudioDevice) { GetUserMediaFailToAccessAudioDevice) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -492,7 +488,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -492,7 +488,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
// This test makes two getUserMedia requests, one with impossible constraints // This test makes two getUserMedia requests, one with impossible constraints
// that should trigger an error, and one with valid constraints. The test // that should trigger an error, and one with valid constraints. The test
// verifies getUserMedia can succeed after being given impossible constraints. // verifies getUserMedia can succeed after being given impossible constraints.
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
TwoGetUserMediaAndCheckCallbackAfterFailure) { TwoGetUserMediaAndCheckCallbackAfterFailure) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -528,7 +524,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -528,7 +524,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
#endif #endif
// This test calls getUserMedia and checks for aspect ratio behavior. // This test calls getUserMedia and checks for aspect ratio behavior.
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
TestGetUserMediaAspectRatio4To3) { TestGetUserMediaAspectRatio4To3) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -543,7 +539,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -543,7 +539,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
} }
// This test calls getUserMedia and checks for aspect ratio behavior. // This test calls getUserMedia and checks for aspect ratio behavior.
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
TestGetUserMediaAspectRatio16To9) { TestGetUserMediaAspectRatio16To9) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -558,7 +554,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -558,7 +554,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
} }
// This test calls getUserMedia and checks for aspect ratio behavior. // This test calls getUserMedia and checks for aspect ratio behavior.
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
TestGetUserMediaAspectRatio1To1) { TestGetUserMediaAspectRatio1To1) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -575,7 +571,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -575,7 +571,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
// This test calls getUserMedia in an iframe and immediately close the iframe // This test calls getUserMedia in an iframe and immediately close the iframe
// in the scope of the success callback. // in the scope of the success callback.
// Flaky: crbug.com/727601. // Flaky: crbug.com/727601.
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
DISABLED_AudioInIFrameAndCloseInSuccessCb) { DISABLED_AudioInIFrameAndCloseInSuccessCb) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -588,7 +584,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -588,7 +584,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
} }
// Flaky: crbug.com/807638 // Flaky: crbug.com/807638
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
DISABLED_VideoInIFrameAndCloseInSuccessCb) { DISABLED_VideoInIFrameAndCloseInSuccessCb) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -602,7 +598,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -602,7 +598,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
// This test calls getUserMedia in an iframe and immediately close the iframe // This test calls getUserMedia in an iframe and immediately close the iframe
// in the scope of the failure callback. // in the scope of the failure callback.
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
VideoWithBadConstraintsInIFrameAndCloseInFailureCb) { VideoWithBadConstraintsInIFrameAndCloseInFailureCb) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -622,7 +618,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -622,7 +618,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
ExecuteJavascriptAndWaitForOk(call); ExecuteJavascriptAndWaitForOk(call);
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
InvalidSourceIdInIFrameAndCloseInFailureCb) { InvalidSourceIdInIFrameAndCloseInFailureCb) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
...@@ -636,7 +632,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -636,7 +632,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
ExecuteJavascriptAndWaitForOk(call); ExecuteJavascriptAndWaitForOk(call);
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
DisableLocalEchoParameter) { DisableLocalEchoParameter) {
base::CommandLine::ForCurrentProcess()->AppendSwitch( base::CommandLine::ForCurrentProcess()->AppendSwitch(
switches::kEnableExperimentalWebPlatformFeatures); switches::kEnableExperimentalWebPlatformFeatures);
...@@ -664,14 +660,14 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -664,14 +660,14 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
MediaStreamManager::GenerateStreamTestCallback()); MediaStreamManager::GenerateStreamTestCallback());
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, GetAudioSettingsDefault) { IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest, GetAudioSettingsDefault) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
NavigateToURL(shell(), url); NavigateToURL(shell(), url);
ExecuteJavascriptAndWaitForOk("getAudioSettingsDefault()"); ExecuteJavascriptAndWaitForOk("getAudioSettingsDefault()");
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
GetAudioSettingsNoEchoCancellation) { GetAudioSettingsNoEchoCancellation) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
...@@ -679,7 +675,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -679,7 +675,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
ExecuteJavascriptAndWaitForOk("getAudioSettingsNoEchoCancellation()"); ExecuteJavascriptAndWaitForOk("getAudioSettingsNoEchoCancellation()");
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
GetAudioSettingsDeviceId) { GetAudioSettingsDeviceId) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
...@@ -687,7 +683,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -687,7 +683,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
ExecuteJavascriptAndWaitForOk("getAudioSettingsDeviceId()"); ExecuteJavascriptAndWaitForOk("getAudioSettingsDeviceId()");
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, SrcObjectAddVideoTrack) { IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest, SrcObjectAddVideoTrack) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
NavigateToURL(shell(), url); NavigateToURL(shell(), url);
...@@ -695,7 +691,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, SrcObjectAddVideoTrack) { ...@@ -695,7 +691,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, SrcObjectAddVideoTrack) {
} }
// Flaky on all platforms. https://crbug.com/835332 // Flaky on all platforms. https://crbug.com/835332
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
DISABLED_SrcObjectRemoveVideoTrack) { DISABLED_SrcObjectRemoveVideoTrack) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
...@@ -703,7 +699,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -703,7 +699,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
ExecuteJavascriptAndWaitForOk("srcObjectRemoveVideoTrack()"); ExecuteJavascriptAndWaitForOk("srcObjectRemoveVideoTrack()");
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
SrcObjectRemoveFirstOfTwoVideoTracks) { SrcObjectRemoveFirstOfTwoVideoTracks) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
...@@ -715,7 +711,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -715,7 +711,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
// when a straightforward mechanism to detect the presence/absence of audio in a // when a straightforward mechanism to detect the presence/absence of audio in a
// media element with an assigned MediaStream becomes available. // media element with an assigned MediaStream becomes available.
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
SrcObjectReassignSameObject) { SrcObjectReassignSameObject) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
...@@ -723,14 +719,14 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -723,14 +719,14 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
ExecuteJavascriptAndWaitForOk("srcObjectReassignSameObject()"); ExecuteJavascriptAndWaitForOk("srcObjectReassignSameObject()");
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ApplyConstraintsVideo) { IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest, ApplyConstraintsVideo) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
NavigateToURL(shell(), url); NavigateToURL(shell(), url);
ExecuteJavascriptAndWaitForOk("applyConstraintsVideo()"); ExecuteJavascriptAndWaitForOk("applyConstraintsVideo()");
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
ApplyConstraintsVideoTwoStreams) { ApplyConstraintsVideoTwoStreams) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
...@@ -738,7 +734,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -738,7 +734,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
ExecuteJavascriptAndWaitForOk("applyConstraintsVideoTwoStreams()"); ExecuteJavascriptAndWaitForOk("applyConstraintsVideoTwoStreams()");
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
ApplyConstraintsVideoOverconstrained) { ApplyConstraintsVideoOverconstrained) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
...@@ -746,7 +742,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -746,7 +742,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
ExecuteJavascriptAndWaitForOk("applyConstraintsVideoOverconstrained()"); ExecuteJavascriptAndWaitForOk("applyConstraintsVideoOverconstrained()");
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
ApplyConstraintsNonDevice) { ApplyConstraintsNonDevice) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
...@@ -754,7 +750,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -754,7 +750,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
ExecuteJavascriptAndWaitForOk("applyConstraintsNonDevice()"); ExecuteJavascriptAndWaitForOk("applyConstraintsNonDevice()");
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
ConcurrentGetUserMediaStop) { ConcurrentGetUserMediaStop) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
...@@ -762,7 +758,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -762,7 +758,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
ExecuteJavascriptAndWaitForOk("concurrentGetUserMediaStop()"); ExecuteJavascriptAndWaitForOk("concurrentGetUserMediaStop()");
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
GetUserMediaAfterStopElementCapture) { GetUserMediaAfterStopElementCapture) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
...@@ -770,7 +766,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -770,7 +766,7 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
ExecuteJavascriptAndWaitForOk("getUserMediaAfterStopCanvasCapture()"); ExecuteJavascriptAndWaitForOk("getUserMediaAfterStopCanvasCapture()");
} }
IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
GetUserMediaEchoCancellationOnAndOff) { GetUserMediaEchoCancellationOnAndOff) {
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
...@@ -778,9 +774,13 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest, ...@@ -778,9 +774,13 @@ IN_PROC_BROWSER_TEST_F(WebRtcGetUserMediaBrowserTest,
ExecuteJavascriptAndWaitForOk("getUserMediaEchoCancellationOnAndOff()"); ExecuteJavascriptAndWaitForOk("getUserMediaEchoCancellationOnAndOff()");
} }
IN_PROC_BROWSER_TEST_F( IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
WebRtcGetUserMediaBrowserTestWithAudioServiceForcedIntoBrowserProcess,
GetAudioStreamAndCheckMutingInitiallyUnmuted) { GetAudioStreamAndCheckMutingInitiallyUnmuted) {
// Muting tests do not work with the out-of-process audio service.
// https://crbug.com/843490.
if (GetParam())
return;
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
...@@ -803,9 +803,13 @@ IN_PROC_BROWSER_TEST_F( ...@@ -803,9 +803,13 @@ IN_PROC_BROWSER_TEST_F(
"failTestAfterTimeout('Got no unmute event', 1500);")); "failTestAfterTimeout('Got no unmute event', 1500);"));
} }
IN_PROC_BROWSER_TEST_F( IN_PROC_BROWSER_TEST_P(WebRtcGetUserMediaBrowserTest,
WebRtcGetUserMediaBrowserTestWithAudioServiceForcedIntoBrowserProcess,
GetAudioStreamAndCheckMutingInitiallyMuted) { GetAudioStreamAndCheckMutingInitiallyMuted) {
// Muting tests do not work with the out-of-process audio service.
// https://crbug.com/843490.
if (GetParam())
return;
ASSERT_TRUE(embedded_test_server()->Start()); ASSERT_TRUE(embedded_test_server()->Start());
GURL url(embedded_test_server()->GetURL("/media/getusermedia.html")); GURL url(embedded_test_server()->GetURL("/media/getusermedia.html"));
...@@ -829,4 +833,18 @@ IN_PROC_BROWSER_TEST_F( ...@@ -829,4 +833,18 @@ IN_PROC_BROWSER_TEST_F(
"failTestAfterTimeout('Got no mute event', 1500);")); "failTestAfterTimeout('Got no mute event', 1500);"));
} }
// We run these tests with the audio service both in and out of the the browser
// process to have waterfall coverage while the feature rolls out. It should be
// removed after launch.
#if (defined(OS_LINUX) && !defined(CHROME_OS)) || defined(OS_MACOSX) || \
defined(OS_WIN)
// Supported platforms.
INSTANTIATE_TEST_CASE_P(, WebRtcGetUserMediaBrowserTest, ::testing::Bool());
#else
// Platforms where the out of process audio service is not supported
INSTANTIATE_TEST_CASE_P(,
WebRtcGetUserMediaBrowserTest,
::testing::Values(false));
#endif
} // namespace content } // namespace content
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment