Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(113)

Side by Side Diff: chrome/browser/apps/web_view_browsertest.cc

Issue 271593009: Rewrite AcceptTouchEvents test from content_browsertests to browser_tests. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: remove repeat macro + remove content_browsertests Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | chrome/test/data/extensions/platform_apps/web_view/accept_touch_events/guest.html » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "apps/ui/native_app_window.h" 5 #include "apps/ui/native_app_window.h"
6 #include "base/path_service.h" 6 #include "base/path_service.h"
7 #include "base/strings/stringprintf.h" 7 #include "base/strings/stringprintf.h"
8 #include "base/strings/utf_string_conversions.h" 8 #include "base/strings/utf_string_conversions.h"
9 #include "chrome/app/chrome_command_ids.h" 9 #include "chrome/app/chrome_command_ids.h"
10 #include "chrome/browser/apps/app_browsertest_util.h" 10 #include "chrome/browser/apps/app_browsertest_util.h"
(...skipping 11 matching lines...) Expand all
22 #include "chrome/test/base/ui_test_utils.h" 22 #include "chrome/test/base/ui_test_utils.h"
23 #include "content/public/browser/gpu_data_manager.h" 23 #include "content/public/browser/gpu_data_manager.h"
24 #include "content/public/browser/interstitial_page.h" 24 #include "content/public/browser/interstitial_page.h"
25 #include "content/public/browser/interstitial_page_delegate.h" 25 #include "content/public/browser/interstitial_page_delegate.h"
26 #include "content/public/browser/notification_service.h" 26 #include "content/public/browser/notification_service.h"
27 #include "content/public/browser/render_process_host.h" 27 #include "content/public/browser/render_process_host.h"
28 #include "content/public/browser/web_contents_delegate.h" 28 #include "content/public/browser/web_contents_delegate.h"
29 #include "content/public/common/content_switches.h" 29 #include "content/public/common/content_switches.h"
30 #include "content/public/test/browser_test_utils.h" 30 #include "content/public/test/browser_test_utils.h"
31 #include "content/public/test/fake_speech_recognition_manager.h" 31 #include "content/public/test/fake_speech_recognition_manager.h"
32 #include "content/public/test/test_renderer_host.h"
32 #include "extensions/common/extension.h" 33 #include "extensions/common/extension.h"
33 #include "extensions/common/extensions_client.h" 34 #include "extensions/common/extensions_client.h"
34 #include "net/test/embedded_test_server/embedded_test_server.h" 35 #include "net/test/embedded_test_server/embedded_test_server.h"
35 #include "net/test/embedded_test_server/http_request.h" 36 #include "net/test/embedded_test_server/http_request.h"
36 #include "net/test/embedded_test_server/http_response.h" 37 #include "net/test/embedded_test_server/http_response.h"
37 #include "ui/gl/gl_switches.h" 38 #include "ui/gl/gl_switches.h"
38 39
39 #if defined(OS_CHROMEOS) 40 #if defined(OS_CHROMEOS)
40 #include "chrome/browser/chromeos/accessibility/accessibility_manager.h" 41 #include "chrome/browser/chromeos/accessibility/accessibility_manager.h"
41 #include "chrome/browser/chromeos/accessibility/speech_monitor.h" 42 #include "chrome/browser/chromeos/accessibility/speech_monitor.h"
(...skipping 625 matching lines...) Expand 10 before | Expand all | Expand 10 after
667 SetBrowserClientForTesting(old_client); 668 SetBrowserClientForTesting(old_client);
668 } 669 }
669 670
670 void SendMessageToEmbedder(const std::string& message) { 671 void SendMessageToEmbedder(const std::string& message) {
671 EXPECT_TRUE( 672 EXPECT_TRUE(
672 content::ExecuteScript( 673 content::ExecuteScript(
673 GetEmbedderWebContents(), 674 GetEmbedderWebContents(),
674 base::StringPrintf("onAppCommand('%s');", message.c_str()))); 675 base::StringPrintf("onAppCommand('%s');", message.c_str())));
675 } 676 }
676 677
678 void SendMessageToGuestAndWait(const std::string& message,
679 const std::string& wait_message) {
680 scoped_ptr<ExtensionTestMessageListener> listener;
681 if (!wait_message.empty()) {
682 listener.reset(new ExtensionTestMessageListener(wait_message, false));
683 }
684
685 EXPECT_TRUE(
686 content::ExecuteScript(
687 GetGuestWebContents(),
688 base::StringPrintf("onAppCommand('%s');", message.c_str())));
689
690 if (listener) {
691 ASSERT_TRUE(listener->WaitUntilSatisfied());
692 }
693 }
694
677 content::WebContents* GetGuestWebContents() { 695 content::WebContents* GetGuestWebContents() {
678 return guest_web_contents_; 696 return guest_web_contents_;
679 } 697 }
680 698
681 content::WebContents* GetEmbedderWebContents() { 699 content::WebContents* GetEmbedderWebContents() {
682 if (!embedder_web_contents_) { 700 if (!embedder_web_contents_) {
683 embedder_web_contents_ = GetFirstAppWindowWebContents(); 701 embedder_web_contents_ = GetFirstAppWindowWebContents();
684 } 702 }
685 return embedder_web_contents_; 703 return embedder_web_contents_;
686 } 704 }
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
730 new content::MessageLoopRunner); 748 new content::MessageLoopRunner);
731 WebContentsHiddenObserver observer(GetGuestWebContents(), 749 WebContentsHiddenObserver observer(GetGuestWebContents(),
732 loop_runner->QuitClosure()); 750 loop_runner->QuitClosure());
733 751
734 // Handled in platform_apps/web_view/visibility_changed/main.js 752 // Handled in platform_apps/web_view/visibility_changed/main.js
735 SendMessageToEmbedder("hide-embedder"); 753 SendMessageToEmbedder("hide-embedder");
736 if (!observer.hidden_observed()) 754 if (!observer.hidden_observed())
737 loop_runner->Run(); 755 loop_runner->Run();
738 } 756 }
739 757
758 IN_PROC_BROWSER_TEST_F(WebViewTest, AcceptTouchEvents) {
759 LoadAppWithGuest("web_view/accept_touch_events");
760
761 content::RenderViewHost* embedder_rvh =
762 GetEmbedderWebContents()->GetRenderViewHost();
763
764 bool embedder_has_touch_handler =
765 content::RenderViewHostTester::HasTouchEventHandler(embedder_rvh);
766 EXPECT_FALSE(embedder_has_touch_handler);
767
768 SendMessageToGuestAndWait("install-touch-handler", "installed-touch-handler");
769
770 // Note that we need to wait for the installed/registered touch handler to
771 // appear in browser process before querying |embedder_rvh|.
772 // In practice, since we do a roundrtip from browser process to guest and
773 // back, this is sufficient.
774 embedder_has_touch_handler =
775 content::RenderViewHostTester::HasTouchEventHandler(embedder_rvh);
776 EXPECT_TRUE(embedder_has_touch_handler);
777
778 SendMessageToGuestAndWait("uninstall-touch-handler",
779 "uninstalled-touch-handler");
780 // Same as the note above about waiting.
781 embedder_has_touch_handler =
782 content::RenderViewHostTester::HasTouchEventHandler(embedder_rvh);
783 EXPECT_FALSE(embedder_has_touch_handler);
784 }
785
740 // This test ensures JavaScript errors ("Cannot redefine property") do not 786 // This test ensures JavaScript errors ("Cannot redefine property") do not
741 // happen when a <webview> is removed from DOM and added back. 787 // happen when a <webview> is removed from DOM and added back.
742 IN_PROC_BROWSER_TEST_F(WebViewTest, 788 IN_PROC_BROWSER_TEST_F(WebViewTest,
743 AddRemoveWebView_AddRemoveWebView) { 789 AddRemoveWebView_AddRemoveWebView) {
744 ASSERT_TRUE(StartEmbeddedTestServer()); // For serving guest pages. 790 ASSERT_TRUE(StartEmbeddedTestServer()); // For serving guest pages.
745 ASSERT_TRUE(RunPlatformAppTest("platform_apps/web_view/addremove")) 791 ASSERT_TRUE(RunPlatformAppTest("platform_apps/web_view/addremove"))
746 << message_; 792 << message_;
747 } 793 }
748 794
749 IN_PROC_BROWSER_TEST_F(WebViewTest, AutoSize) { 795 IN_PROC_BROWSER_TEST_F(WebViewTest, AutoSize) {
(...skipping 1328 matching lines...) Expand 10 before | Expand all | Expand 10 after
2078 IN_PROC_BROWSER_TEST_F(WebViewTest, Shim_TestFindAPI_findupdate) { 2124 IN_PROC_BROWSER_TEST_F(WebViewTest, Shim_TestFindAPI_findupdate) {
2079 TestHelper("testFindAPI_findupdate", "web_view/shim", NO_TEST_SERVER); 2125 TestHelper("testFindAPI_findupdate", "web_view/shim", NO_TEST_SERVER);
2080 } 2126 }
2081 2127
2082 // <webview> screenshot capture fails with ubercomp. 2128 // <webview> screenshot capture fails with ubercomp.
2083 // See http://crbug.com/327035. 2129 // See http://crbug.com/327035.
2084 IN_PROC_BROWSER_TEST_F(WebViewCaptureTest, 2130 IN_PROC_BROWSER_TEST_F(WebViewCaptureTest,
2085 DISABLED_Shim_ScreenshotCapture) { 2131 DISABLED_Shim_ScreenshotCapture) {
2086 TestHelper("testScreenshotCapture", "web_view/shim", NO_TEST_SERVER); 2132 TestHelper("testScreenshotCapture", "web_view/shim", NO_TEST_SERVER);
2087 } 2133 }
OLDNEW
« no previous file with comments | « no previous file | chrome/test/data/extensions/platform_apps/web_view/accept_touch_events/guest.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698