OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "chrome/browser/android/data_usage/data_use_ui_tab_model.h" | 5 #include "chrome/browser/android/data_usage/data_use_ui_tab_model.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include "base/macros.h" | 10 #include "base/macros.h" |
(...skipping 12 matching lines...) Expand all Loading... |
23 #include "testing/gtest/include/gtest/gtest.h" | 23 #include "testing/gtest/include/gtest/gtest.h" |
24 #include "ui/base/page_transition_types.h" | 24 #include "ui/base/page_transition_types.h" |
25 #include "url/gurl.h" | 25 #include "url/gurl.h" |
26 | 26 |
27 namespace chrome { | 27 namespace chrome { |
28 | 28 |
29 namespace android { | 29 namespace android { |
30 | 30 |
31 namespace { | 31 namespace { |
32 | 32 |
| 33 const char kFooLabel[] = "foo_label"; |
| 34 const char kFooPackage[] = "com.foo"; |
| 35 |
33 class TestDataUseTabModel : public DataUseTabModel { | 36 class TestDataUseTabModel : public DataUseTabModel { |
34 public: | 37 public: |
35 TestDataUseTabModel() {} | 38 TestDataUseTabModel() {} |
36 ~TestDataUseTabModel() override {} | 39 ~TestDataUseTabModel() override {} |
37 | 40 |
38 using DataUseTabModel::NotifyObserversOfTrackingStarting; | 41 using DataUseTabModel::NotifyObserversOfTrackingStarting; |
39 using DataUseTabModel::NotifyObserversOfTrackingEnding; | 42 using DataUseTabModel::NotifyObserversOfTrackingEnding; |
40 }; | 43 }; |
41 | 44 |
42 class DataUseUITabModelTest : public testing::Test { | 45 class DataUseUITabModelTest : public testing::Test { |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
89 scoped_ptr<data_usage::DataUseAggregator> data_use_aggregator_; | 92 scoped_ptr<data_usage::DataUseAggregator> data_use_aggregator_; |
90 scoped_ptr<ExternalDataUseObserver> external_data_use_observer_; | 93 scoped_ptr<ExternalDataUseObserver> external_data_use_observer_; |
91 scoped_ptr<TestDataUseTabModel> data_use_tab_model_; | 94 scoped_ptr<TestDataUseTabModel> data_use_tab_model_; |
92 }; | 95 }; |
93 | 96 |
94 } // namespace | 97 } // namespace |
95 | 98 |
96 // Tests that DataUseTabModel is notified of tab closure and navigation events, | 99 // Tests that DataUseTabModel is notified of tab closure and navigation events, |
97 // and DataUseTabModel notifies DataUseUITabModel. | 100 // and DataUseTabModel notifies DataUseUITabModel. |
98 TEST_F(DataUseUITabModelTest, ReportTabEventsTest) { | 101 TEST_F(DataUseUITabModelTest, ReportTabEventsTest) { |
99 const char kFooLabel[] = "foo_label"; | |
100 const char kFooPackage[] = "com.foo"; | |
101 | |
102 std::vector<std::string> url_regexes; | 102 std::vector<std::string> url_regexes; |
103 url_regexes.push_back( | 103 url_regexes.push_back( |
104 "http://www[.]foo[.]com/#q=.*|https://www[.]foo[.]com/#q=.*"); | 104 "http://www[.]foo[.]com/#q=.*|https://www[.]foo[.]com/#q=.*"); |
105 RegisterURLRegexes(std::vector<std::string>(url_regexes.size(), kFooPackage), | 105 RegisterURLRegexes(std::vector<std::string>(url_regexes.size(), kFooPackage), |
106 url_regexes, | 106 url_regexes, |
107 std::vector<std::string>(url_regexes.size(), kFooLabel)); | 107 std::vector<std::string>(url_regexes.size(), kFooLabel)); |
108 | 108 |
109 const struct { | 109 const struct { |
110 ui::PageTransition transition_type; | 110 ui::PageTransition transition_type; |
111 std::string expected_label; | 111 std::string expected_label; |
(...skipping 10 matching lines...) Expand all Loading... |
122 }; | 122 }; |
123 | 123 |
124 SessionID::id_type foo_tab_id = 100; | 124 SessionID::id_type foo_tab_id = 100; |
125 | 125 |
126 for (size_t i = 0; i < arraysize(tests); ++i) { | 126 for (size_t i = 0; i < arraysize(tests); ++i) { |
127 // Start a new tab. | 127 // Start a new tab. |
128 ++foo_tab_id; | 128 ++foo_tab_id; |
129 data_use_ui_tab_model()->ReportBrowserNavigation( | 129 data_use_ui_tab_model()->ReportBrowserNavigation( |
130 GURL("https://www.foo.com/#q=abc"), tests[i].transition_type, | 130 GURL("https://www.foo.com/#q=abc"), tests[i].transition_type, |
131 foo_tab_id); | 131 foo_tab_id); |
132 // Wait for DataUseUITabModel to notify DataUseTabModel, which should notify | |
133 // DataUseUITabModel back. | |
134 base::RunLoop().RunUntilIdle(); | |
135 | 132 |
136 // |data_use_ui_tab_model| should receive callback about starting of | 133 // |data_use_ui_tab_model| should receive callback about starting of |
137 // tracking of data usage for |foo_tab_id|. | 134 // tracking of data usage for |foo_tab_id|. |
138 EXPECT_EQ(!tests[i].expected_label.empty(), | 135 EXPECT_EQ(!tests[i].expected_label.empty(), |
139 data_use_ui_tab_model()->HasDataUseTrackingStarted(foo_tab_id)) | 136 data_use_ui_tab_model()->HasDataUseTrackingStarted(foo_tab_id)) |
140 << i; | 137 << i; |
141 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(foo_tab_id)) | 138 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(foo_tab_id)) |
142 << i; | 139 << i; |
143 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(foo_tab_id)) | 140 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(foo_tab_id)) |
144 << i; | 141 << i; |
145 | 142 |
146 std::string got_label; | 143 std::string got_label; |
147 data_use_tab_model()->GetLabelForTabAtTime( | 144 data_use_tab_model()->GetLabelForTabAtTime( |
148 foo_tab_id, base::TimeTicks::Now(), &got_label); | 145 foo_tab_id, base::TimeTicks::Now(), &got_label); |
149 EXPECT_EQ(tests[i].expected_label, got_label) << i; | 146 EXPECT_EQ(tests[i].expected_label, got_label) << i; |
150 | 147 |
151 // Report closure of tab. | 148 // Report closure of tab. |
152 data_use_ui_tab_model()->ReportTabClosure(foo_tab_id); | 149 data_use_ui_tab_model()->ReportTabClosure(foo_tab_id); |
153 base::RunLoop().RunUntilIdle(); | |
154 | 150 |
155 // DataUse object should not be labeled. | 151 // DataUse object should not be labeled. |
156 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(foo_tab_id)); | 152 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(foo_tab_id)); |
157 data_use_tab_model()->GetLabelForTabAtTime( | 153 data_use_tab_model()->GetLabelForTabAtTime( |
158 foo_tab_id, base::TimeTicks::Now() + base::TimeDelta::FromMinutes(10), | 154 foo_tab_id, base::TimeTicks::Now() + base::TimeDelta::FromMinutes(10), |
159 &got_label); | 155 &got_label); |
160 EXPECT_EQ(std::string(), got_label) << i; | 156 EXPECT_EQ(std::string(), got_label) << i; |
161 } | 157 } |
162 | 158 |
163 const SessionID::id_type bar_tab_id = foo_tab_id + 1; | 159 const SessionID::id_type bar_tab_id = foo_tab_id + 1; |
164 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(bar_tab_id)); | 160 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(bar_tab_id)); |
165 data_use_ui_tab_model()->ReportCustomTabInitialNavigation( | 161 data_use_ui_tab_model()->ReportCustomTabInitialNavigation( |
166 bar_tab_id, std::string(), kFooPackage); | 162 bar_tab_id, kFooPackage, std::string()); |
167 base::RunLoop().RunUntilIdle(); | |
168 | 163 |
169 // |data_use_ui_tab_model| should receive callback about starting of | 164 // |data_use_ui_tab_model| should receive callback about starting of |
170 // tracking of data usage for |bar_tab_id|. | 165 // tracking of data usage for |bar_tab_id|. |
171 EXPECT_TRUE(data_use_ui_tab_model()->HasDataUseTrackingStarted(bar_tab_id)); | 166 EXPECT_TRUE(data_use_ui_tab_model()->HasDataUseTrackingStarted(bar_tab_id)); |
172 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(bar_tab_id)); | 167 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(bar_tab_id)); |
173 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(bar_tab_id)); | 168 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(bar_tab_id)); |
174 | 169 |
175 data_use_ui_tab_model()->ReportTabClosure(bar_tab_id); | 170 data_use_ui_tab_model()->ReportTabClosure(bar_tab_id); |
176 base::RunLoop().RunUntilIdle(); | |
177 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(bar_tab_id)); | 171 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(bar_tab_id)); |
178 } | 172 } |
179 | 173 |
180 // Tests if the Entrance/Exit UI state is tracked correctly. | 174 // Tests if the Entrance/Exit UI state is tracked correctly. |
181 TEST_F(DataUseUITabModelTest, EntranceExitState) { | 175 TEST_F(DataUseUITabModelTest, EntranceExitState) { |
182 const SessionID::id_type kFooTabId = 1; | 176 const SessionID::id_type kFooTabId = 1; |
183 const SessionID::id_type kBarTabId = 2; | 177 const SessionID::id_type kBarTabId = 2; |
184 const SessionID::id_type kBazTabId = 3; | 178 const SessionID::id_type kBazTabId = 3; |
185 | 179 |
186 // HasDataUseTrackingStarted should return true only once. | 180 // HasDataUseTrackingStarted should return true only once. |
187 data_use_tab_model()->NotifyObserversOfTrackingStarting(kFooTabId); | 181 data_use_tab_model()->NotifyObserversOfTrackingStarting(kFooTabId); |
188 base::RunLoop().RunUntilIdle(); | |
189 EXPECT_TRUE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kFooTabId)); | 182 EXPECT_TRUE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kFooTabId)); |
190 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kFooTabId)); | 183 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kFooTabId)); |
191 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(kFooTabId)); | 184 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(kFooTabId)); |
192 | 185 |
193 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kBarTabId)); | 186 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kBarTabId)); |
194 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(kBarTabId)); | 187 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(kBarTabId)); |
195 | 188 |
196 // HasDataUseTrackingEnded should return true only once. | 189 // HasDataUseTrackingEnded should return true only once. |
197 data_use_tab_model()->NotifyObserversOfTrackingEnding(kFooTabId); | 190 data_use_tab_model()->NotifyObserversOfTrackingEnding(kFooTabId); |
198 base::RunLoop().RunUntilIdle(); | |
199 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kFooTabId)); | 191 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kFooTabId)); |
200 EXPECT_TRUE(data_use_ui_tab_model()->HasDataUseTrackingEnded(kFooTabId)); | 192 EXPECT_TRUE(data_use_ui_tab_model()->HasDataUseTrackingEnded(kFooTabId)); |
201 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(kFooTabId)); | 193 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(kFooTabId)); |
202 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kFooTabId)); | 194 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kFooTabId)); |
203 | 195 |
204 // The tab enters the tracking state again. | 196 // The tab enters the tracking state again. |
205 data_use_tab_model()->NotifyObserversOfTrackingStarting(kFooTabId); | 197 data_use_tab_model()->NotifyObserversOfTrackingStarting(kFooTabId); |
206 base::RunLoop().RunUntilIdle(); | |
207 EXPECT_TRUE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kFooTabId)); | 198 EXPECT_TRUE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kFooTabId)); |
208 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kFooTabId)); | 199 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kFooTabId)); |
209 | 200 |
210 // The tab exits the tracking state. | 201 // The tab exits the tracking state. |
211 data_use_tab_model()->NotifyObserversOfTrackingEnding(kFooTabId); | 202 data_use_tab_model()->NotifyObserversOfTrackingEnding(kFooTabId); |
212 base::RunLoop().RunUntilIdle(); | |
213 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kFooTabId)); | 203 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kFooTabId)); |
214 | 204 |
215 // The tab enters the tracking state again. | 205 // The tab enters the tracking state again. |
216 data_use_tab_model()->NotifyObserversOfTrackingStarting(kFooTabId); | 206 data_use_tab_model()->NotifyObserversOfTrackingStarting(kFooTabId); |
217 base::RunLoop().RunUntilIdle(); | |
218 data_use_tab_model()->NotifyObserversOfTrackingStarting(kFooTabId); | 207 data_use_tab_model()->NotifyObserversOfTrackingStarting(kFooTabId); |
219 base::RunLoop().RunUntilIdle(); | |
220 EXPECT_TRUE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kFooTabId)); | 208 EXPECT_TRUE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kFooTabId)); |
221 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kFooTabId)); | 209 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kFooTabId)); |
222 | 210 |
223 // ShowExit should return true only once. | 211 // ShowExit should return true only once. |
224 data_use_tab_model()->NotifyObserversOfTrackingEnding(kBarTabId); | 212 data_use_tab_model()->NotifyObserversOfTrackingEnding(kBarTabId); |
225 base::RunLoop().RunUntilIdle(); | |
226 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kBarTabId)); | 213 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kBarTabId)); |
227 EXPECT_TRUE(data_use_ui_tab_model()->HasDataUseTrackingEnded(kBarTabId)); | 214 EXPECT_TRUE(data_use_ui_tab_model()->HasDataUseTrackingEnded(kBarTabId)); |
228 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(kBarTabId)); | 215 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(kBarTabId)); |
229 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kBarTabId)); | 216 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kBarTabId)); |
230 | 217 |
231 data_use_ui_tab_model()->ReportTabClosure(kFooTabId); | 218 data_use_ui_tab_model()->ReportTabClosure(kFooTabId); |
232 data_use_ui_tab_model()->ReportTabClosure(kBarTabId); | 219 data_use_ui_tab_model()->ReportTabClosure(kBarTabId); |
233 | 220 |
234 // HasDataUseTrackingStarted/Ended should return false for closed tabs. | 221 // HasDataUseTrackingStarted/Ended should return false for closed tabs. |
235 data_use_tab_model()->NotifyObserversOfTrackingStarting(kBazTabId); | 222 data_use_tab_model()->NotifyObserversOfTrackingStarting(kBazTabId); |
236 base::RunLoop().RunUntilIdle(); | |
237 data_use_ui_tab_model()->ReportTabClosure(kBazTabId); | 223 data_use_ui_tab_model()->ReportTabClosure(kBazTabId); |
238 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kBazTabId)); | 224 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(kBazTabId)); |
239 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(kBazTabId)); | 225 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(kBazTabId)); |
240 } | 226 } |
241 | 227 |
| 228 // Tests if the Entrance/Exit UI state is tracked correctly. |
| 229 TEST_F(DataUseUITabModelTest, EntraceExitStateForDialog) { |
| 230 const SessionID::id_type kFooTabId = 1; |
| 231 |
| 232 std::vector<std::string> url_regexes; |
| 233 url_regexes.push_back( |
| 234 "http://www[.]foo[.]com/#q=.*|https://www[.]foo[.]com/#q=.*"); |
| 235 RegisterURLRegexes(std::vector<std::string>(url_regexes.size(), kFooPackage), |
| 236 url_regexes, |
| 237 std::vector<std::string>(url_regexes.size(), kFooLabel)); |
| 238 |
| 239 SessionID::id_type foo_tab_id = kFooTabId; |
| 240 |
| 241 const struct { |
| 242 // True if a dialog box was shown to the user. It may not be shown if the |
| 243 // user has previously selected the option to opt out. |
| 244 bool continue_dialog_box_shown; |
| 245 bool user_proceeded_with_navigation; |
| 246 } tests[] = { |
| 247 {false, false}, {true, true}, {true, false}, |
| 248 }; |
| 249 |
| 250 for (size_t i = 0; i < arraysize(tests); ++i) { |
| 251 // Start a new tab. |
| 252 ++foo_tab_id; |
| 253 data_use_ui_tab_model()->ReportBrowserNavigation( |
| 254 GURL("https://www.foo.com/#q=abc"), ui::PAGE_TRANSITION_GENERATED, |
| 255 foo_tab_id); |
| 256 |
| 257 // |data_use_ui_tab_model| should receive callback about starting of |
| 258 // tracking of data usage for |foo_tab_id|. |
| 259 EXPECT_TRUE(data_use_ui_tab_model()->HasDataUseTrackingStarted(foo_tab_id)) |
| 260 << i; |
| 261 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingStarted(foo_tab_id)) |
| 262 << i; |
| 263 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(foo_tab_id)) |
| 264 << i; |
| 265 |
| 266 std::string got_label; |
| 267 data_use_tab_model()->GetLabelForTabAtTime( |
| 268 foo_tab_id, base::TimeTicks::Now(), &got_label); |
| 269 EXPECT_EQ(kFooLabel, got_label) << i; |
| 270 |
| 271 // Tab enters non-tracking state. |
| 272 data_use_ui_tab_model()->ReportBrowserNavigation( |
| 273 GURL("https://www.bar.com/#q=abc"), |
| 274 ui::PageTransition::PAGE_TRANSITION_TYPED, foo_tab_id); |
| 275 |
| 276 EXPECT_TRUE(data_use_ui_tab_model()->HasDataUseTrackingEnded(foo_tab_id)) |
| 277 << i; |
| 278 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(foo_tab_id)) |
| 279 << i; |
| 280 |
| 281 // Tab enters tracking state. |
| 282 data_use_ui_tab_model()->ReportBrowserNavigation( |
| 283 GURL("https://www.foo.com/#q=abc"), ui::PAGE_TRANSITION_GENERATED, |
| 284 foo_tab_id); |
| 285 |
| 286 EXPECT_TRUE(data_use_ui_tab_model()->HasDataUseTrackingStarted(foo_tab_id)) |
| 287 << i; |
| 288 |
| 289 // Tab may enter non-tracking state. |
| 290 EXPECT_TRUE(data_use_ui_tab_model()->WouldDataUseTrackingEnd( |
| 291 "https://www.bar.com/#q=abc", ui::PageTransition::PAGE_TRANSITION_TYPED, |
| 292 foo_tab_id)); |
| 293 if (tests[i].continue_dialog_box_shown && |
| 294 tests[i].user_proceeded_with_navigation) { |
| 295 data_use_ui_tab_model()->UserClickedContinueOnDialogBox(foo_tab_id); |
| 296 } |
| 297 |
| 298 if (tests[i].user_proceeded_with_navigation) { |
| 299 data_use_ui_tab_model()->ReportBrowserNavigation( |
| 300 GURL("https://www.bar.com/#q=abc"), |
| 301 ui::PageTransition::PAGE_TRANSITION_TYPED, foo_tab_id); |
| 302 } |
| 303 |
| 304 const std::string expected_label = |
| 305 tests[i].user_proceeded_with_navigation ? "" : kFooLabel; |
| 306 data_use_tab_model()->GetLabelForTabAtTime( |
| 307 foo_tab_id, base::TimeTicks::Now(), &got_label); |
| 308 EXPECT_EQ(expected_label, got_label) << i; |
| 309 |
| 310 if (tests[i].user_proceeded_with_navigation) { |
| 311 // No UI element should be shown afterwards if the dialog box was shown |
| 312 // before. |
| 313 EXPECT_NE(tests[i].continue_dialog_box_shown, |
| 314 data_use_ui_tab_model()->HasDataUseTrackingEnded(foo_tab_id)) |
| 315 << i; |
| 316 } else { |
| 317 EXPECT_FALSE(data_use_ui_tab_model()->HasDataUseTrackingEnded(foo_tab_id)) |
| 318 << i; |
| 319 } |
| 320 } |
| 321 } |
| 322 |
242 // Checks if page transition type is converted correctly. | 323 // Checks if page transition type is converted correctly. |
243 TEST_F(DataUseUITabModelTest, ConvertTransitionType) { | 324 TEST_F(DataUseUITabModelTest, ConvertTransitionType) { |
244 DataUseTabModel::TransitionType transition_type; | 325 DataUseTabModel::TransitionType transition_type; |
245 EXPECT_TRUE(data_use_ui_tab_model()->ConvertTransitionType( | 326 EXPECT_TRUE(data_use_ui_tab_model()->ConvertTransitionType( |
246 ui::PageTransition(ui::PAGE_TRANSITION_TYPED), &transition_type)); | 327 ui::PageTransition(ui::PAGE_TRANSITION_TYPED), &transition_type)); |
247 EXPECT_EQ(DataUseTabModel::TRANSITION_OMNIBOX_NAVIGATION, transition_type); | 328 EXPECT_EQ(DataUseTabModel::TRANSITION_OMNIBOX_NAVIGATION, transition_type); |
248 EXPECT_TRUE(data_use_ui_tab_model()->ConvertTransitionType( | 329 EXPECT_TRUE(data_use_ui_tab_model()->ConvertTransitionType( |
249 ui::PageTransition(ui::PAGE_TRANSITION_TYPED | 0xFF00), | 330 ui::PageTransition(ui::PAGE_TRANSITION_TYPED | 0xFF00), |
250 &transition_type)); | 331 &transition_type)); |
251 EXPECT_EQ(DataUseTabModel::TRANSITION_OMNIBOX_NAVIGATION, transition_type); | 332 EXPECT_EQ(DataUseTabModel::TRANSITION_OMNIBOX_NAVIGATION, transition_type); |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
317 EXPECT_FALSE(data_use_ui_tab_model()->ConvertTransitionType( | 398 EXPECT_FALSE(data_use_ui_tab_model()->ConvertTransitionType( |
318 ui::PageTransition(ui::PAGE_TRANSITION_MANUAL_SUBFRAME), | 399 ui::PageTransition(ui::PAGE_TRANSITION_MANUAL_SUBFRAME), |
319 &transition_type)); | 400 &transition_type)); |
320 EXPECT_FALSE(data_use_ui_tab_model()->ConvertTransitionType( | 401 EXPECT_FALSE(data_use_ui_tab_model()->ConvertTransitionType( |
321 ui::PageTransition(ui::PAGE_TRANSITION_FORM_SUBMIT), &transition_type)); | 402 ui::PageTransition(ui::PAGE_TRANSITION_FORM_SUBMIT), &transition_type)); |
322 } | 403 } |
323 | 404 |
324 } // namespace android | 405 } // namespace android |
325 | 406 |
326 } // namespace chrome | 407 } // namespace chrome |
OLD | NEW |