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

Side by Side Diff: chrome/browser/chromeos/arc/page_transition_util_unittest.cc

Issue 2415983002: Move page_transition_util to components/arc/intent_helper/ (Closed)
Patch Set: Created 4 years, 2 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 | « chrome/browser/chromeos/arc/page_transition_util.cc ('k') | components/arc/BUILD.gn » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "chrome/browser/chromeos/arc/page_transition_util.h"
6 #include "testing/gtest/include/gtest/gtest.h"
7 #include "ui/base/page_transition_types.h"
8
9 namespace arc {
10
11 // Tests that ShouldIgnoreNavigation returns false only for
12 // PAGE_TRANSITION_LINK.
13 TEST(PageTransitionUtilTest, TestShouldIgnoreNavigationWithCoreTypes) {
14 EXPECT_FALSE(ShouldIgnoreNavigation(ui::PAGE_TRANSITION_LINK, false));
15 EXPECT_FALSE(ShouldIgnoreNavigation(ui::PAGE_TRANSITION_LINK, true));
16 EXPECT_TRUE(ShouldIgnoreNavigation(ui::PAGE_TRANSITION_TYPED, false));
17 EXPECT_TRUE(ShouldIgnoreNavigation(ui::PAGE_TRANSITION_TYPED, true));
18 EXPECT_TRUE(ShouldIgnoreNavigation(ui::PAGE_TRANSITION_AUTO_BOOKMARK, false));
19 EXPECT_TRUE(ShouldIgnoreNavigation(ui::PAGE_TRANSITION_AUTO_BOOKMARK, true));
20 EXPECT_TRUE(ShouldIgnoreNavigation(ui::PAGE_TRANSITION_AUTO_SUBFRAME, false));
21 EXPECT_TRUE(ShouldIgnoreNavigation(ui::PAGE_TRANSITION_AUTO_SUBFRAME, true));
22 EXPECT_TRUE(
23 ShouldIgnoreNavigation(ui::PAGE_TRANSITION_MANUAL_SUBFRAME, false));
24 EXPECT_TRUE(
25 ShouldIgnoreNavigation(ui::PAGE_TRANSITION_MANUAL_SUBFRAME, true));
26 EXPECT_TRUE(ShouldIgnoreNavigation(ui::PAGE_TRANSITION_GENERATED, false));
27 EXPECT_TRUE(ShouldIgnoreNavigation(ui::PAGE_TRANSITION_GENERATED, true));
28 EXPECT_TRUE(ShouldIgnoreNavigation(ui::PAGE_TRANSITION_AUTO_TOPLEVEL, false));
29 EXPECT_TRUE(ShouldIgnoreNavigation(ui::PAGE_TRANSITION_AUTO_TOPLEVEL, true));
30 EXPECT_TRUE(ShouldIgnoreNavigation(ui::PAGE_TRANSITION_FORM_SUBMIT, false));
31 EXPECT_FALSE(ShouldIgnoreNavigation(ui::PAGE_TRANSITION_FORM_SUBMIT, true));
32 EXPECT_TRUE(ShouldIgnoreNavigation(ui::PAGE_TRANSITION_RELOAD, false));
33 EXPECT_TRUE(ShouldIgnoreNavigation(ui::PAGE_TRANSITION_RELOAD, true));
34 EXPECT_TRUE(ShouldIgnoreNavigation(ui::PAGE_TRANSITION_KEYWORD, false));
35 EXPECT_TRUE(ShouldIgnoreNavigation(ui::PAGE_TRANSITION_KEYWORD, true));
36 EXPECT_TRUE(
37 ShouldIgnoreNavigation(ui::PAGE_TRANSITION_KEYWORD_GENERATED, false));
38 EXPECT_TRUE(
39 ShouldIgnoreNavigation(ui::PAGE_TRANSITION_KEYWORD_GENERATED, true));
40
41 static_assert(
42 ui::PAGE_TRANSITION_KEYWORD_GENERATED == ui::PAGE_TRANSITION_LAST_CORE,
43 "Not all core transition types are covered here");
44 }
45
46 // Tests that ShouldIgnoreNavigation returns true when no qualifiers except
47 // server redirect are provided.
48 TEST(PageTransitionUtilTest, TestShouldIgnoreNavigationWithLinkWithQualifiers) {
49 // The navigation is triggered by Forward or Back button.
50 EXPECT_TRUE(ShouldIgnoreNavigation(
51 ui::PageTransitionFromInt(ui::PAGE_TRANSITION_LINK |
52 ui::PAGE_TRANSITION_FORWARD_BACK),
53 false));
54 EXPECT_TRUE(ShouldIgnoreNavigation(
55 ui::PageTransitionFromInt(ui::PAGE_TRANSITION_FORM_SUBMIT |
56 ui::PAGE_TRANSITION_FORWARD_BACK),
57 true));
58 // The user used the address bar to triger the navigation.
59 EXPECT_TRUE(ShouldIgnoreNavigation(
60 ui::PageTransitionFromInt(ui::PAGE_TRANSITION_LINK |
61 ui::PAGE_TRANSITION_FROM_ADDRESS_BAR),
62 false));
63 // The user pressed the Home button.
64 EXPECT_TRUE(ShouldIgnoreNavigation(
65 ui::PageTransitionFromInt(ui::PAGE_TRANSITION_LINK |
66 ui::PAGE_TRANSITION_HOME_PAGE),
67 false));
68 // ARC (for example) opened the link in Chrome.
69 EXPECT_TRUE(ShouldIgnoreNavigation(
70 ui::PageTransitionFromInt(ui::PAGE_TRANSITION_LINK |
71 ui::PAGE_TRANSITION_FROM_API),
72 false));
73 // The navigation is triggered by a client side redirect.
74 EXPECT_TRUE(ShouldIgnoreNavigation(
75 ui::PageTransitionFromInt(ui::PAGE_TRANSITION_LINK |
76 ui::PAGE_TRANSITION_CLIENT_REDIRECT),
77 false));
78 // Also tests the case with 2+ qualifiers.
79 EXPECT_TRUE(ShouldIgnoreNavigation(
80 ui::PageTransitionFromInt(ui::PAGE_TRANSITION_LINK |
81 ui::PAGE_TRANSITION_FROM_ADDRESS_BAR |
82 ui::PAGE_TRANSITION_CLIENT_REDIRECT),
83 false));
84 }
85
86 // Just in case, does the same with ui::PAGE_TRANSITION_TYPED.
87 TEST(PageTransitionUtilTest,
88 TestShouldIgnoreNavigationWithTypedWithQualifiers) {
89 EXPECT_TRUE(ShouldIgnoreNavigation(
90 ui::PageTransitionFromInt(ui::PAGE_TRANSITION_TYPED |
91 ui::PAGE_TRANSITION_FORWARD_BACK),
92 false));
93 EXPECT_TRUE(ShouldIgnoreNavigation(
94 ui::PageTransitionFromInt(ui::PAGE_TRANSITION_TYPED |
95 ui::PAGE_TRANSITION_FORWARD_BACK),
96 true));
97 EXPECT_TRUE(ShouldIgnoreNavigation(
98 ui::PageTransitionFromInt(ui::PAGE_TRANSITION_TYPED |
99 ui::PAGE_TRANSITION_FROM_ADDRESS_BAR),
100 false));
101 EXPECT_TRUE(ShouldIgnoreNavigation(
102 ui::PageTransitionFromInt(ui::PAGE_TRANSITION_TYPED |
103 ui::PAGE_TRANSITION_HOME_PAGE),
104 false));
105 EXPECT_TRUE(ShouldIgnoreNavigation(
106 ui::PageTransitionFromInt(ui::PAGE_TRANSITION_TYPED |
107 ui::PAGE_TRANSITION_FROM_API),
108 false));
109 EXPECT_TRUE(ShouldIgnoreNavigation(
110 ui::PageTransitionFromInt(ui::PAGE_TRANSITION_TYPED |
111 ui::PAGE_TRANSITION_FROM_ADDRESS_BAR |
112 ui::PAGE_TRANSITION_CLIENT_REDIRECT),
113 false));
114 }
115
116 // Tests that ShouldIgnoreNavigation returns false if SERVER_REDIRECT is the
117 // only qualifier given.
118 TEST(PageTransitionUtilTest, TestShouldIgnoreNavigationWithServerRedirect) {
119 EXPECT_FALSE(ShouldIgnoreNavigation(
120 ui::PageTransitionFromInt(ui::PAGE_TRANSITION_LINK |
121 ui::PAGE_TRANSITION_SERVER_REDIRECT),
122 false));
123 EXPECT_FALSE(ShouldIgnoreNavigation(
124 ui::PageTransitionFromInt(ui::PAGE_TRANSITION_FORM_SUBMIT |
125 ui::PAGE_TRANSITION_SERVER_REDIRECT),
126 true));
127
128 EXPECT_TRUE(ShouldIgnoreNavigation(
129 ui::PageTransitionFromInt(ui::PAGE_TRANSITION_LINK |
130 ui::PAGE_TRANSITION_SERVER_REDIRECT |
131 ui::PAGE_TRANSITION_FROM_API),
132 false));
133 EXPECT_TRUE(ShouldIgnoreNavigation(
134 ui::PageTransitionFromInt(ui::PAGE_TRANSITION_FORM_SUBMIT |
135 ui::PAGE_TRANSITION_SERVER_REDIRECT |
136 ui::PAGE_TRANSITION_FROM_API),
137 true));
138 }
139
140 } // namespace arc
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/arc/page_transition_util.cc ('k') | components/arc/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698