diff options
Diffstat (limited to 'chrome/browser/media/chrome_webrtc_browsertest.cc')
-rw-r--r-- | chrome/browser/media/chrome_webrtc_browsertest.cc | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/chrome/browser/media/chrome_webrtc_browsertest.cc b/chrome/browser/media/chrome_webrtc_browsertest.cc index 8c5a2ba..1819470 100644 --- a/chrome/browser/media/chrome_webrtc_browsertest.cc +++ b/chrome/browser/media/chrome_webrtc_browsertest.cc @@ -61,6 +61,9 @@ class MAYBE_WebrtcBrowserTest : public WebRtcTestBase { // The video playback will not work without a GPU, so force its use here. command_line->AppendSwitch(switches::kUseGpuInTests); + + // Flag used by TestWebAudioMediaStream to force garbage collection. + command_line->AppendSwitchASCII(switches::kJavaScriptFlags, "--expose-gc"); } // Ensures we didn't get any errors asynchronously (e.g. while no javascript @@ -357,3 +360,15 @@ IN_PROC_BROWSER_TEST_F(MAYBE_WebrtcBrowserTest, ASSERT_TRUE(peerconnection_server_.Stop()); } + +IN_PROC_BROWSER_TEST_F(MAYBE_WebrtcBrowserTest, TestWebAudioMediaStream) { + ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); + GURL url(embedded_test_server()->GetURL("/webrtc/webaudio_crash.html")); + ui_test_utils::NavigateToURL(browser(), url); + content::WebContents* tab = + browser()->tab_strip_model()->GetActiveWebContents(); + // A sleep is necessary to be able to detect the crash. + SleepInJavascript(tab, 1000); + + ASSERT_FALSE(tab->IsCrashed()); +} |