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

Side by Side Diff: content/browser/screen_orientation/screen_orientation_browsertest.cc

Issue 436543002: Reduce potential flakyness of test by not requesting resize_ack. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@makes_test_flaky
Patch Set: Created 6 years, 4 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 | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 <stdlib.h> 5 #include <stdlib.h>
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "content/browser/renderer_host/render_widget_host_impl.h" 8 #include "content/browser/renderer_host/render_widget_host_impl.h"
9 #include "content/common/view_messages.h" 9 #include "content/common/view_messages.h"
10 #include "content/public/browser/render_widget_host.h" 10 #include "content/public/browser/render_widget_host.h"
(...skipping 12 matching lines...) Expand all
23 namespace content { 23 namespace content {
24 24
25 class ScreenOrientationBrowserTest : public ContentBrowserTest { 25 class ScreenOrientationBrowserTest : public ContentBrowserTest {
26 public: 26 public:
27 ScreenOrientationBrowserTest() { 27 ScreenOrientationBrowserTest() {
28 } 28 }
29 29
30 virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE { 30 virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE {
31 command_line->AppendSwitch( 31 command_line->AppendSwitch(
32 switches::kEnableExperimentalWebPlatformFeatures); 32 switches::kEnableExperimentalWebPlatformFeatures);
33 command_line->AppendSwitch(switches::kEnablePixelOutputInTests);
34 } 33 }
35 34
36 virtual void SetUp() OVERRIDE { 35 virtual void SetUp() OVERRIDE {
37 // Painting has to happen otherwise the Resize messages will be added on top 36 // Painting has to happen otherwise the Resize messages will be added on top
38 // of each other without properly ack-painting which will fail and crash. 37 // of each other without properly ack-painting which will fail and crash.
39 UseSoftwareCompositing(); 38 UseSoftwareCompositing();
40 EnablePixelOutput();
41
42 // The browser process should not ack check, otherwise it will break.
43 RenderWidgetHostImpl::DisableResizeAckCheckForTesting();
44 39
45 ContentBrowserTest::SetUp(); 40 ContentBrowserTest::SetUp();
46 } 41 }
47 42
48 protected: 43 protected:
49 void SendFakeScreenOrientation(unsigned angle, const std::string& strType) { 44 void SendFakeScreenOrientation(unsigned angle, const std::string& strType) {
50 RenderWidgetHost* rwh = shell()->web_contents()->GetRenderWidgetHostView() 45 RenderWidgetHost* rwh = shell()->web_contents()->GetRenderWidgetHostView()
51 ->GetRenderWidgetHost(); 46 ->GetRenderWidgetHost();
52 blink::WebScreenInfo screen_info; 47 blink::WebScreenInfo screen_info;
53 rwh->GetWebScreenInfo(&screen_info); 48 rwh->GetWebScreenInfo(&screen_info);
54 screen_info.orientationAngle = angle; 49 screen_info.orientationAngle = angle;
55 50
56 blink::WebScreenOrientationType type = blink::WebScreenOrientationUndefined; 51 blink::WebScreenOrientationType type = blink::WebScreenOrientationUndefined;
57 if (strType == "portrait-primary") { 52 if (strType == "portrait-primary") {
58 type = blink::WebScreenOrientationPortraitPrimary; 53 type = blink::WebScreenOrientationPortraitPrimary;
59 } else if (strType == "portrait-secondary") { 54 } else if (strType == "portrait-secondary") {
60 type = blink::WebScreenOrientationPortraitSecondary; 55 type = blink::WebScreenOrientationPortraitSecondary;
61 } else if (strType == "landscape-primary") { 56 } else if (strType == "landscape-primary") {
62 type = blink::WebScreenOrientationLandscapePrimary; 57 type = blink::WebScreenOrientationLandscapePrimary;
63 } else if (strType == "landscape-secondary") { 58 } else if (strType == "landscape-secondary") {
64 type = blink::WebScreenOrientationLandscapeSecondary; 59 type = blink::WebScreenOrientationLandscapeSecondary;
65 } 60 }
66 ASSERT_NE(blink::WebScreenOrientationUndefined, type); 61 ASSERT_NE(blink::WebScreenOrientationUndefined, type);
67 screen_info.orientationType = type; 62 screen_info.orientationType = type;
68 63
69 ViewMsg_Resize_Params params; 64 ViewMsg_Resize_Params params;
70 params.screen_info = screen_info; 65 params.screen_info = screen_info;
71 params.new_size = gfx::Size(300, 300); 66 params.new_size = gfx::Size(0, 0);
72 params.physical_backing_size = gfx::Size(300, 300); 67 params.physical_backing_size = gfx::Size(300, 300);
73 params.overdraw_bottom_height = 0.f; 68 params.overdraw_bottom_height = 0.f;
74 params.resizer_rect = gfx::Rect(); 69 params.resizer_rect = gfx::Rect();
75 params.is_fullscreen = false; 70 params.is_fullscreen = false;
76 rwh->Send(new ViewMsg_Resize(rwh->GetRoutingID(), params)); 71 rwh->Send(new ViewMsg_Resize(rwh->GetRoutingID(), params));
77 } 72 }
78 73
79 int GetOrientationAngle() { 74 int GetOrientationAngle() {
80 int angle; 75 int angle;
81 ExecuteScriptAndGetValue(shell()->web_contents()->GetMainFrame(), 76 ExecuteScriptAndGetValue(shell()->web_contents()->GetMainFrame(),
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
115 110
116 TestNavigationObserver navigation_observer(shell()->web_contents(), 1); 111 TestNavigationObserver navigation_observer(shell()->web_contents(), 1);
117 navigation_observer.Wait(); 112 navigation_observer.Wait();
118 EXPECT_EQ(angle, GetOrientationAngle()); 113 EXPECT_EQ(angle, GetOrientationAngle());
119 EXPECT_EQ(types[i], GetOrientationType()); 114 EXPECT_EQ(types[i], GetOrientationType());
120 } 115 }
121 } 116 }
122 #endif // !defined(OS_ANDROID) && !defined(OS_MACOSX) && !defined(OS_CHROMEOS) 117 #endif // !defined(OS_ANDROID) && !defined(OS_MACOSX) && !defined(OS_CHROMEOS)
123 118
124 } // namespace content 119 } // namespace content
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698