Commit a14d6125 authored by leilei's avatar leilei Committed by Commit bot

Fix MANUAL_Fail_NoProvider failure on all platforms.

There is a race condition issue, the media router dialog will be closed
immediatly after gets the response for creating route. But we execute
javascript to choose sink on media router dialog, the dialog is closed
before the javascript results are sent back to C++ code, which causes
timeout.

The fix is to execute javascript to choose sink on media router dialog,
but don't wait to get the results.

BUG=637141

Review-Url: https://codereview.chromium.org/2352243002
Cr-Commit-Position: refs/heads/master@{#419943}
parent 16604988
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
#include "chrome/browser/ui/webui/media_router/media_router_dialog_controller_impl.h" #include "chrome/browser/ui/webui/media_router/media_router_dialog_controller_impl.h"
#include "chrome/common/url_constants.h" #include "chrome/common/url_constants.h"
#include "chrome/test/base/ui_test_utils.h" #include "chrome/test/base/ui_test_utils.h"
#include "content/public/browser/render_frame_host.h"
#include "content/public/test/browser_test_utils.h" #include "content/public/test/browser_test_utils.h"
#include "content/public/test/test_navigation_observer.h" #include "content/public/test/test_navigation_observer.h"
#include "content/public/test/test_utils.h" #include "content/public/test/test_utils.h"
...@@ -173,7 +174,9 @@ void MediaRouterIntegrationBrowserTest::ChooseSink( ...@@ -173,7 +174,9 @@ void MediaRouterIntegrationBrowserTest::ChooseSink(
content::WebContents* dialog_contents = GetMRDialog(web_contents); content::WebContents* dialog_contents = GetMRDialog(web_contents);
std::string script = base::StringPrintf( std::string script = base::StringPrintf(
kChooseSinkScript, sink_name.c_str()); kChooseSinkScript, sink_name.c_str());
ASSERT_TRUE(content::ExecuteScript(dialog_contents, script)); // Execute javascript to choose sink, but don't wait until it finishes.
dialog_contents->GetMainFrame()->ExecuteJavaScriptWithUserGestureForTests(
base::UTF8ToUTF16(script));
} }
void MediaRouterIntegrationBrowserTest::CheckStartFailed( void MediaRouterIntegrationBrowserTest::CheckStartFailed(
......
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