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 "components/web_view/public/cpp/web_view.h" | 5 #include "components/web_view/public/cpp/web_view.h" |
6 | 6 |
7 #include <stdint.h> | 7 #include <stdint.h> |
8 #include <utility> | 8 #include <utility> |
9 | 9 |
10 #include "base/base_paths.h" | 10 #include "base/base_paths.h" |
(...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
179 EXPECT_EQ(kTestOneTitle, last_title()); | 179 EXPECT_EQ(kTestOneTitle, last_title()); |
180 } | 180 } |
181 | 181 |
182 TEST_F(WebViewTest, CanGoBackAndForward) { | 182 TEST_F(WebViewTest, CanGoBackAndForward) { |
183 ASSERT_NO_FATAL_FAILURE(NavigateTo(kTestOneFile)); | 183 ASSERT_NO_FATAL_FAILURE(NavigateTo(kTestOneFile)); |
184 | 184 |
185 // We can't go back on first navigation since there's nothing previously on | 185 // We can't go back on first navigation since there's nothing previously on |
186 // the stack. | 186 // the stack. |
187 EXPECT_EQ(GetTestFileURL(kTestOneFile).spec(), navigation_url()); | 187 EXPECT_EQ(GetTestFileURL(kTestOneFile).spec(), navigation_url()); |
188 EXPECT_EQ(kTestOneTitle, last_title()); | 188 EXPECT_EQ(kTestOneTitle, last_title()); |
189 EXPECT_EQ(mojom::ButtonState::BUTTON_STATE_DISABLED, | 189 EXPECT_EQ(mojom::ButtonState::DISABLED, last_back_button_state()); |
190 last_back_button_state()); | 190 EXPECT_EQ(mojom::ButtonState::DISABLED, last_forward_button_state()); |
191 EXPECT_EQ(mojom::ButtonState::BUTTON_STATE_DISABLED, | |
192 last_forward_button_state()); | |
193 | 191 |
194 ASSERT_NO_FATAL_FAILURE(NavigateTo(kTestTwoFile)); | 192 ASSERT_NO_FATAL_FAILURE(NavigateTo(kTestTwoFile)); |
195 | 193 |
196 EXPECT_EQ(kTestTwoTitle, last_title()); | 194 EXPECT_EQ(kTestTwoTitle, last_title()); |
197 EXPECT_EQ(mojom::ButtonState::BUTTON_STATE_ENABLED, last_back_button_state()); | 195 EXPECT_EQ(mojom::ButtonState::ENABLED, last_back_button_state()); |
198 EXPECT_EQ(mojom::ButtonState::BUTTON_STATE_DISABLED, | 196 EXPECT_EQ(mojom::ButtonState::DISABLED, last_forward_button_state()); |
199 last_forward_button_state()); | |
200 | 197 |
201 web_view()->GoBack(); | 198 web_view()->GoBack(); |
202 StartNestedRunLoopUntil(LOADING_DONE); | 199 StartNestedRunLoopUntil(LOADING_DONE); |
203 | 200 |
204 EXPECT_EQ(GetTestFileURL(kTestOneFile).spec(), navigation_url()); | 201 EXPECT_EQ(GetTestFileURL(kTestOneFile).spec(), navigation_url()); |
205 EXPECT_EQ(kTestOneTitle, last_title()); | 202 EXPECT_EQ(kTestOneTitle, last_title()); |
206 EXPECT_EQ(mojom::ButtonState::BUTTON_STATE_DISABLED, | 203 EXPECT_EQ(mojom::ButtonState::DISABLED, last_back_button_state()); |
207 last_back_button_state()); | 204 EXPECT_EQ(mojom::ButtonState::ENABLED, last_forward_button_state()); |
208 EXPECT_EQ(mojom::ButtonState::BUTTON_STATE_ENABLED, | |
209 last_forward_button_state()); | |
210 | 205 |
211 web_view()->GoForward(); | 206 web_view()->GoForward(); |
212 StartNestedRunLoopUntil(LOADING_DONE); | 207 StartNestedRunLoopUntil(LOADING_DONE); |
213 EXPECT_EQ(GetTestFileURL(kTestTwoFile).spec(), navigation_url()); | 208 EXPECT_EQ(GetTestFileURL(kTestTwoFile).spec(), navigation_url()); |
214 EXPECT_EQ(kTestTwoTitle, last_title()); | 209 EXPECT_EQ(kTestTwoTitle, last_title()); |
215 EXPECT_EQ(mojom::ButtonState::BUTTON_STATE_ENABLED, last_back_button_state()); | 210 EXPECT_EQ(mojom::ButtonState::ENABLED, last_back_button_state()); |
216 EXPECT_EQ(mojom::ButtonState::BUTTON_STATE_DISABLED, | 211 EXPECT_EQ(mojom::ButtonState::DISABLED, last_forward_button_state()); |
217 last_forward_button_state()); | |
218 } | 212 } |
219 | 213 |
220 TEST_F(WebViewTest, NavigationClearsForward) { | 214 TEST_F(WebViewTest, NavigationClearsForward) { |
221 // First navigate somewhere, navigate somewhere else, and go back so we have | 215 // First navigate somewhere, navigate somewhere else, and go back so we have |
222 // one item in the forward stack. | 216 // one item in the forward stack. |
223 ASSERT_NO_FATAL_FAILURE(NavigateTo(kTestOneFile)); | 217 ASSERT_NO_FATAL_FAILURE(NavigateTo(kTestOneFile)); |
224 ASSERT_NO_FATAL_FAILURE(NavigateTo(kTestTwoFile)); | 218 ASSERT_NO_FATAL_FAILURE(NavigateTo(kTestTwoFile)); |
225 | 219 |
226 web_view()->GoBack(); | 220 web_view()->GoBack(); |
227 StartNestedRunLoopUntil(LOADING_DONE); | 221 StartNestedRunLoopUntil(LOADING_DONE); |
228 | 222 |
229 EXPECT_EQ(GetTestFileURL(kTestOneFile).spec(), navigation_url()); | 223 EXPECT_EQ(GetTestFileURL(kTestOneFile).spec(), navigation_url()); |
230 EXPECT_EQ(kTestOneTitle, last_title()); | 224 EXPECT_EQ(kTestOneTitle, last_title()); |
231 EXPECT_EQ(mojom::ButtonState::BUTTON_STATE_DISABLED, | 225 EXPECT_EQ(mojom::ButtonState::DISABLED, last_back_button_state()); |
232 last_back_button_state()); | 226 EXPECT_EQ(mojom::ButtonState::ENABLED, last_forward_button_state()); |
233 EXPECT_EQ(mojom::ButtonState::BUTTON_STATE_ENABLED, | |
234 last_forward_button_state()); | |
235 | 227 |
236 // Now navigate to a third file. This should clear the forward stack. | 228 // Now navigate to a third file. This should clear the forward stack. |
237 ASSERT_NO_FATAL_FAILURE(NavigateTo(kTestThreeFile)); | 229 ASSERT_NO_FATAL_FAILURE(NavigateTo(kTestThreeFile)); |
238 | 230 |
239 EXPECT_EQ(GetTestFileURL(kTestThreeFile).spec(), navigation_url()); | 231 EXPECT_EQ(GetTestFileURL(kTestThreeFile).spec(), navigation_url()); |
240 EXPECT_EQ(kTestThreeTitle, last_title()); | 232 EXPECT_EQ(kTestThreeTitle, last_title()); |
241 EXPECT_EQ(mojom::ButtonState::BUTTON_STATE_ENABLED, last_back_button_state()); | 233 EXPECT_EQ(mojom::ButtonState::ENABLED, last_back_button_state()); |
242 EXPECT_EQ(mojom::ButtonState::BUTTON_STATE_DISABLED, | 234 EXPECT_EQ(mojom::ButtonState::DISABLED, last_forward_button_state()); |
243 last_forward_button_state()); | |
244 } | 235 } |
245 | 236 |
246 TEST_F(WebViewTest, Find) { | 237 TEST_F(WebViewTest, Find) { |
247 ASSERT_NO_FATAL_FAILURE(NavigateTo(kTheWordGreenFiveTimes)); | 238 ASSERT_NO_FATAL_FAILURE(NavigateTo(kTheWordGreenFiveTimes)); |
248 | 239 |
249 web_view()->Find("Green", true); | 240 web_view()->Find("Green", true); |
250 StartNestedRunLoopUntil(FINAL_FIND_UPATE); | 241 StartNestedRunLoopUntil(FINAL_FIND_UPATE); |
251 EXPECT_EQ(1, active_find_match()); | 242 EXPECT_EQ(1, active_find_match()); |
252 EXPECT_EQ(5, find_count()); | 243 EXPECT_EQ(5, find_count()); |
253 } | 244 } |
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
316 EXPECT_EQ(i, active_find_match()); | 307 EXPECT_EQ(i, active_find_match()); |
317 } | 308 } |
318 | 309 |
319 // We should wrap around. | 310 // We should wrap around. |
320 web_view()->Find("Green", true); | 311 web_view()->Find("Green", true); |
321 StartNestedRunLoopUntil(ACTIVE_FIND_UPDATE); | 312 StartNestedRunLoopUntil(ACTIVE_FIND_UPDATE); |
322 EXPECT_EQ(1, active_find_match()); | 313 EXPECT_EQ(1, active_find_match()); |
323 } | 314 } |
324 | 315 |
325 } // namespace web_view | 316 } // namespace web_view |
OLD | NEW |