| Index: content/browser/vibration_browsertest.cc | 
| diff --git a/content/browser/vibration_browsertest.cc b/content/browser/vibration_browsertest.cc | 
| deleted file mode 100644 | 
| index 342e58beb035346bd44e988439f453a32bc69b91..0000000000000000000000000000000000000000 | 
| --- a/content/browser/vibration_browsertest.cc | 
| +++ /dev/null | 
| @@ -1,203 +0,0 @@ | 
| -// Copyright 2015 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 <stdint.h> | 
| -#include <utility> | 
| - | 
| -#include "base/bind.h" | 
| -#include "base/macros.h" | 
| -#include "base/memory/ptr_util.h" | 
| -#include "base/strings/string_number_conversions.h" | 
| -#include "build/build_config.h" | 
| -#include "content/public/browser/render_frame_host.h" | 
| -#include "content/public/browser/web_contents.h" | 
| -#include "content/public/test/browser_test_utils.h" | 
| -#include "content/public/test/content_browser_test.h" | 
| -#include "content/public/test/content_browser_test_utils.h" | 
| -#include "content/public/test/test_utils.h" | 
| -#include "content/shell/browser/shell.h" | 
| -#include "device/vibration/vibration_manager.mojom.h" | 
| -#include "mojo/public/cpp/bindings/strong_binding.h" | 
| -#include "services/service_manager/public/cpp/interface_registry.h" | 
| - | 
| -// These tests run against a dummy implementation of the VibrationManager | 
| -// service. That is, they verify that the service implementation is correctly | 
| -// exposed to the renderer, whatever the implementation is. | 
| - | 
| -namespace content { | 
| - | 
| -namespace { | 
| - | 
| -// Global, record milliseconds when FakeVibrationManager::Vibrate got called. | 
| -int64_t g_vibrate_milliseconds = -1; | 
| - | 
| -// Global, record whether FakeVibrationManager::Cancel got called. | 
| -bool g_cancelled = false; | 
| - | 
| -// Global, wait for end of execution for FakeVibrationManager::Vibrate. | 
| -scoped_refptr<MessageLoopRunner> g_wait_vibrate_runner; | 
| - | 
| -// Global, wait for end of execution for FakeVibrationManager::Cancel. | 
| -scoped_refptr<MessageLoopRunner> g_wait_cancel_runner; | 
| - | 
| -void ResetGlobalValues() { | 
| -  g_vibrate_milliseconds = -1; | 
| -  g_cancelled = false; | 
| - | 
| -  g_wait_vibrate_runner = new MessageLoopRunner(); | 
| -  g_wait_cancel_runner = new MessageLoopRunner(); | 
| -} | 
| - | 
| -class FakeVibrationManager : public device::mojom::VibrationManager { | 
| - public: | 
| -  FakeVibrationManager() {} | 
| -  ~FakeVibrationManager() override {} | 
| - | 
| -  static void Create(device::mojom::VibrationManagerRequest request) { | 
| -    mojo::MakeStrongBinding(base::MakeUnique<FakeVibrationManager>(), | 
| -                            std::move(request)); | 
| -  } | 
| - | 
| - private: | 
| -  void Vibrate(int64_t milliseconds, const VibrateCallback& callback) override { | 
| -    g_vibrate_milliseconds = milliseconds; | 
| -    callback.Run(); | 
| -    g_wait_vibrate_runner->Quit(); | 
| -  } | 
| - | 
| -  void Cancel(const CancelCallback& callback) override { | 
| -    g_cancelled = true; | 
| -    callback.Run(); | 
| -    g_wait_cancel_runner->Quit(); | 
| -  } | 
| -}; | 
| - | 
| -class VibrationTest : public ContentBrowserTest { | 
| - public: | 
| -  VibrationTest() {} | 
| - | 
| -  void SetUpOnMainThread() override { | 
| -    ResetGlobalValues(); | 
| -    GetMainFrame()->GetInterfaceRegistry()->AddInterface( | 
| -        base::Bind(&FakeVibrationManager::Create)); | 
| -  } | 
| - | 
| -  bool Vibrate(int duration) { return Vibrate(duration, GetMainFrame()); } | 
| - | 
| -  bool Vibrate(int duration, RenderFrameHost* frame) { | 
| -    bool result; | 
| -    std::string script = "domAutomationController.send(navigator.vibrate(" + | 
| -                         base::IntToString(duration) + "))"; | 
| -    EXPECT_TRUE(ExecuteScriptAndExtractBool(frame, script, &result)); | 
| -    return result; | 
| -  } | 
| - | 
| -  bool Cancel() { | 
| -    bool result; | 
| -    std::string script = "domAutomationController.send(navigator.vibrate(0))"; | 
| -    EXPECT_TRUE(ExecuteScriptAndExtractBool(GetMainFrame(), script, &result)); | 
| -    return result; | 
| -  } | 
| - | 
| -  bool DestroyIframe() { | 
| -    std::string script = | 
| -        "document.getElementById('test_iframe').parentNode.innerHTML = ''"; | 
| -    return ExecuteScript(GetMainFrame(), script); | 
| -  } | 
| - | 
| -  RenderFrameHost* GetMainFrame() { | 
| -    return shell()->web_contents()->GetMainFrame(); | 
| -  } | 
| - | 
| - private: | 
| -  DISALLOW_COPY_AND_ASSIGN(VibrationTest); | 
| -}; | 
| - | 
| -IN_PROC_BROWSER_TEST_F(VibrationTest, Vibrate) { | 
| -  ASSERT_EQ(-1, g_vibrate_milliseconds); | 
| - | 
| -  ASSERT_TRUE(NavigateToURL(shell(), GetTestUrl(".", "simple_page.html"))); | 
| -  ASSERT_TRUE(Vibrate(1234)); | 
| -  g_wait_vibrate_runner->Run(); | 
| - | 
| -  ASSERT_EQ(1234, g_vibrate_milliseconds); | 
| -} | 
| - | 
| -IN_PROC_BROWSER_TEST_F(VibrationTest, Cancel) { | 
| -  ASSERT_FALSE(g_cancelled); | 
| - | 
| -  ASSERT_TRUE(NavigateToURL(shell(), GetTestUrl(".", "simple_page.html"))); | 
| -  ASSERT_TRUE(Vibrate(1234)); | 
| -  g_wait_vibrate_runner->Run(); | 
| -  ASSERT_TRUE(Cancel()); | 
| -  g_wait_cancel_runner->Run(); | 
| - | 
| -  ASSERT_TRUE(g_cancelled); | 
| -} | 
| - | 
| -IN_PROC_BROWSER_TEST_F(VibrationTest, | 
| -                       CancelVibrationFromMainFrameWhenMainFrameIsReloaded) { | 
| -  ASSERT_FALSE(g_cancelled); | 
| - | 
| -  ASSERT_TRUE(NavigateToURL(shell(), GetTestUrl(".", "simple_page.html"))); | 
| -  ASSERT_TRUE(Vibrate(1234)); | 
| -  g_wait_vibrate_runner->Run(); | 
| -  ASSERT_TRUE(NavigateToURL(shell(), GetTestUrl(".", "simple_page.html"))); | 
| -  g_wait_cancel_runner->Run(); | 
| - | 
| -  ASSERT_TRUE(g_cancelled); | 
| -} | 
| - | 
| -IN_PROC_BROWSER_TEST_F(VibrationTest, | 
| -                       CancelVibrationFromSubFrameWhenSubFrameIsReloaded) { | 
| -  ASSERT_FALSE(g_cancelled); | 
| - | 
| -  ASSERT_TRUE(NavigateToURL(shell(), GetTestUrl(".", "page_with_iframe.html"))); | 
| -  RenderFrameHost* iframe = ChildFrameAt(GetMainFrame(), 0); | 
| -  iframe->GetInterfaceRegistry()->AddInterface( | 
| -      base::Bind(&FakeVibrationManager::Create)); | 
| -  ASSERT_TRUE(Vibrate(1234, iframe)); | 
| -  g_wait_vibrate_runner->Run(); | 
| -  ASSERT_TRUE(NavigateIframeToURL(shell()->web_contents(), "test_iframe", | 
| -                                  GetTestUrl(".", "title1.html"))); | 
| -  g_wait_cancel_runner->Run(); | 
| - | 
| -  ASSERT_TRUE(g_cancelled); | 
| -} | 
| - | 
| -IN_PROC_BROWSER_TEST_F(VibrationTest, | 
| -                       CancelVibrationFromSubFrameWhenMainFrameIsReloaded) { | 
| -  ASSERT_FALSE(g_cancelled); | 
| - | 
| -  ASSERT_TRUE(NavigateToURL(shell(), GetTestUrl(".", "page_with_iframe.html"))); | 
| -  RenderFrameHost* iframe = ChildFrameAt(GetMainFrame(), 0); | 
| -  iframe->GetInterfaceRegistry()->AddInterface( | 
| -      base::Bind(&FakeVibrationManager::Create)); | 
| -  ASSERT_TRUE(Vibrate(1234, iframe)); | 
| -  g_wait_vibrate_runner->Run(); | 
| -  ASSERT_TRUE(NavigateToURL(shell(), GetTestUrl(".", "page_with_iframe.html"))); | 
| -  g_wait_cancel_runner->Run(); | 
| - | 
| -  ASSERT_TRUE(g_cancelled); | 
| -} | 
| - | 
| -IN_PROC_BROWSER_TEST_F(VibrationTest, | 
| -                       CancelVibrationFromSubFrameWhenSubFrameIsDestroyed) { | 
| -  ASSERT_FALSE(g_cancelled); | 
| - | 
| -  ASSERT_TRUE(NavigateToURL(shell(), GetTestUrl(".", "page_with_iframe.html"))); | 
| -  RenderFrameHost* iframe = ChildFrameAt(GetMainFrame(), 0); | 
| -  iframe->GetInterfaceRegistry()->AddInterface( | 
| -      base::Bind(&FakeVibrationManager::Create)); | 
| -  ASSERT_TRUE(Vibrate(1234, iframe)); | 
| -  g_wait_vibrate_runner->Run(); | 
| -  ASSERT_TRUE(DestroyIframe()); | 
| -  g_wait_cancel_runner->Run(); | 
| - | 
| -  ASSERT_TRUE(g_cancelled); | 
| -} | 
| - | 
| -}  //  namespace | 
| - | 
| -}  //  namespace content | 
|  |