Chromium Code Reviews| Index: ios/web/navigation/navigation_manager_impl_unittest.mm |
| diff --git a/ios/web/navigation/navigation_manager_impl_unittest.mm b/ios/web/navigation/navigation_manager_impl_unittest.mm |
| index 899d7e3f4f451fbae5c0710848a49c030c1ea5b2..e57607ae59f7c0c502387bbb95499f1ba85fe8d0 100644 |
| --- a/ios/web/navigation/navigation_manager_impl_unittest.mm |
| +++ b/ios/web/navigation/navigation_manager_impl_unittest.mm |
| @@ -7,6 +7,7 @@ |
| #include "base/logging.h" |
| #include "base/mac/bind_objc_block.h" |
| #import "ios/web/navigation/crw_session_controller+private_constructors.h" |
| +#import "ios/web/navigation/legacy_navigation_manager_impl.h" |
| #import "ios/web/navigation/navigation_manager_delegate.h" |
| #include "ios/web/public/navigation_item.h" |
| #include "ios/web/public/test/fakes/test_browser_state.h" |
| @@ -56,10 +57,20 @@ class TestNavigationManagerDelegate : public NavigationManagerDelegate { |
| }; |
| } // namespace |
| -// Test fixture for NavigationManagerImpl testing. |
| -class NavigationManagerTest : public PlatformTest { |
| +// Programmatic test fixture for NavigationManagerImpl testing. |
| +// GetParam() chooses whether to run tests on LegacyNavigationManagerImpl or |
| +// (the soon-to-be-implemented) WKBasedNavigationManagerImpl. |
| +// TODO(crbug.com/734150): cleanup the LegacyNavigationManagerImpl use case. |
| +class NavigationManagerTest : public PlatformTest, |
| + public ::testing::WithParamInterface<bool> { |
| protected: |
| - NavigationManagerTest() : manager_(new NavigationManagerImpl()) { |
| + NavigationManagerTest() { |
| + bool test_legacy_navigation_manager = GetParam(); |
| + if (test_legacy_navigation_manager) { |
| + manager_.reset(new LegacyNavigationManagerImpl); |
| + } else { |
| + DCHECK(false) << "Not implemented."; |
| + } |
| // Setup rewriter. |
| BrowserURLRewriter::GetInstance()->AddURLRewriter(UrlRewriter); |
| url::AddStandardScheme(kSchemeToRewrite, url::SCHEME_WITHOUT_PORT); |
| @@ -72,6 +83,7 @@ class NavigationManagerTest : public PlatformTest { |
| } |
| CRWSessionController* session_controller() { return controller_; } |
| NavigationManagerImpl* navigation_manager() { return manager_.get(); } |
| + |
| TestNavigationManagerDelegate navigation_manager_delegate() { |
| return delegate_; |
| } |
| @@ -84,7 +96,7 @@ class NavigationManagerTest : public PlatformTest { |
| }; |
| // Tests state of an empty navigation manager. |
| -TEST_F(NavigationManagerTest, EmptyManager) { |
| +TEST_P(NavigationManagerTest, EmptyManager) { |
| EXPECT_EQ(0, navigation_manager()->GetItemCount()); |
| EXPECT_EQ(-1, navigation_manager()->GetLastCommittedItemIndex()); |
| EXPECT_EQ(-1, navigation_manager()->GetLastCommittedItemIndex()); |
| @@ -94,7 +106,7 @@ TEST_F(NavigationManagerTest, EmptyManager) { |
| } |
| // Tests that GetPendingItemIndex() returns -1 if there is no pending entry. |
| -TEST_F(NavigationManagerTest, GetPendingItemIndexWithoutPendingEntry) { |
| +TEST_P(NavigationManagerTest, GetPendingItemIndexWithoutPendingEntry) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.url.com"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| web::NavigationInitiationType::USER_INITIATED, |
| @@ -105,7 +117,7 @@ TEST_F(NavigationManagerTest, GetPendingItemIndexWithoutPendingEntry) { |
| // Tests that GetPendingItemIndex() returns current item index if there is a |
| // pending entry. |
| -TEST_F(NavigationManagerTest, GetPendingItemIndexWithPendingEntry) { |
| +TEST_P(NavigationManagerTest, GetPendingItemIndexWithPendingEntry) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.url.com"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| web::NavigationInitiationType::USER_INITIATED, |
| @@ -120,7 +132,7 @@ TEST_F(NavigationManagerTest, GetPendingItemIndexWithPendingEntry) { |
| // Tests that GetPendingItemIndex() returns same index as was set by |
| // -[CRWSessionController setPendingItemIndex:]. |
| -TEST_F(NavigationManagerTest, GetPendingItemIndexWithIndexedPendingEntry) { |
| +TEST_P(NavigationManagerTest, GetPendingItemIndexWithIndexedPendingEntry) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.url.com"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| web::NavigationInitiationType::USER_INITIATED, |
| @@ -139,14 +151,14 @@ TEST_F(NavigationManagerTest, GetPendingItemIndexWithIndexedPendingEntry) { |
| // Tests that going back or negative offset is not possible without a committed |
| // item. |
| -TEST_F(NavigationManagerTest, CanGoBackWithoutCommitedItem) { |
| +TEST_P(NavigationManagerTest, CanGoBackWithoutCommitedItem) { |
| EXPECT_FALSE(navigation_manager()->CanGoBack()); |
| EXPECT_FALSE(navigation_manager()->CanGoToOffset(-1)); |
| } |
| // Tests that going back or negative offset is not possible if there is a |
| // transient item, but not committed items. |
| -TEST_F(NavigationManagerTest, CanGoBackWithTransientItem) { |
| +TEST_P(NavigationManagerTest, CanGoBackWithTransientItem) { |
| [session_controller() addTransientItemWithURL:GURL("http://www.url.com")]; |
| EXPECT_FALSE(navigation_manager()->CanGoBack()); |
| @@ -155,7 +167,7 @@ TEST_F(NavigationManagerTest, CanGoBackWithTransientItem) { |
| // Tests that going back or negative offset is possible if there is a transient |
| // item and at least one committed item. |
| -TEST_F(NavigationManagerTest, CanGoBackWithTransientItemAndCommittedItem) { |
| +TEST_P(NavigationManagerTest, CanGoBackWithTransientItemAndCommittedItem) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.url.com"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| web::NavigationInitiationType::USER_INITIATED, |
| @@ -169,7 +181,7 @@ TEST_F(NavigationManagerTest, CanGoBackWithTransientItemAndCommittedItem) { |
| // Tests that going back or negative offset is not possible if there is ony one |
| // committed item and no transient item. |
| -TEST_F(NavigationManagerTest, CanGoBackWithSingleCommitedItem) { |
| +TEST_P(NavigationManagerTest, CanGoBackWithSingleCommitedItem) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.url.com"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| web::NavigationInitiationType::USER_INITIATED, |
| @@ -181,7 +193,7 @@ TEST_F(NavigationManagerTest, CanGoBackWithSingleCommitedItem) { |
| } |
| // Tests going back possibility with multiple committed items. |
| -TEST_F(NavigationManagerTest, CanGoBackWithMultipleCommitedItems) { |
| +TEST_P(NavigationManagerTest, CanGoBackWithMultipleCommitedItems) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.url.com"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| web::NavigationInitiationType::USER_INITIATED, |
| @@ -216,14 +228,14 @@ TEST_F(NavigationManagerTest, CanGoBackWithMultipleCommitedItems) { |
| // Tests that going forward or positive offset is not possible without a |
| // committed item. |
| -TEST_F(NavigationManagerTest, CanGoForwardWithoutCommitedItem) { |
| +TEST_P(NavigationManagerTest, CanGoForwardWithoutCommitedItem) { |
| EXPECT_FALSE(navigation_manager()->CanGoForward()); |
| EXPECT_FALSE(navigation_manager()->CanGoToOffset(1)); |
| } |
| // Tests that going forward or positive offset is not possible if there is ony |
| // one committed item and no transient item. |
| -TEST_F(NavigationManagerTest, CanGoForwardWithSingleCommitedItem) { |
| +TEST_P(NavigationManagerTest, CanGoForwardWithSingleCommitedItem) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.url.com"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| web::NavigationInitiationType::USER_INITIATED, |
| @@ -235,7 +247,7 @@ TEST_F(NavigationManagerTest, CanGoForwardWithSingleCommitedItem) { |
| } |
| // Tests going forward possibility with multiple committed items. |
| -TEST_F(NavigationManagerTest, CanGoForwardWithMultipleCommitedEntries) { |
| +TEST_P(NavigationManagerTest, CanGoForwardWithMultipleCommitedEntries) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.url.com"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| web::NavigationInitiationType::USER_INITIATED, |
| @@ -275,7 +287,7 @@ TEST_F(NavigationManagerTest, CanGoForwardWithMultipleCommitedEntries) { |
| // Tests CanGoToOffset API for positive, negative and zero delta. Tested |
| // navigation manager will have redirect entries to make sure they are |
| // appropriately skipped. |
| -TEST_F(NavigationManagerTest, OffsetsWithoutPendingIndex) { |
| +TEST_P(NavigationManagerTest, OffsetsWithoutPendingIndex) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.url.com/0"), Referrer(), ui::PAGE_TRANSITION_LINK, |
| web::NavigationInitiationType::USER_INITIATED, |
| @@ -502,7 +514,7 @@ TEST_F(NavigationManagerTest, OffsetsWithoutPendingIndex) { |
| // Tests offsets with pending transient entries (specifically gong back and |
| // forward from a pending navigation entry that is added to the middle of the |
| // navigation stack). |
| -TEST_F(NavigationManagerTest, OffsetsWithPendingTransientEntry) { |
| +TEST_P(NavigationManagerTest, OffsetsWithPendingTransientEntry) { |
| // Create a transient item in the middle of the navigation stack and go back |
| // to it (pending index is 1, current index is 2). |
| navigation_manager()->AddPendingItem( |
| @@ -542,7 +554,7 @@ TEST_F(NavigationManagerTest, OffsetsWithPendingTransientEntry) { |
| // Tests that when given a pending item, adding a new pending item replaces the |
| // existing pending item if their URLs are different. |
| -TEST_F(NavigationManagerTest, ReplacePendingItemIfDiffernetURL) { |
| +TEST_P(NavigationManagerTest, ReplacePendingItemIfDiffernetURL) { |
| GURL existing_url = GURL("http://www.existing.com"); |
| navigation_manager()->AddPendingItem( |
| existing_url, Referrer(), ui::PAGE_TRANSITION_TYPED, |
| @@ -565,7 +577,7 @@ TEST_F(NavigationManagerTest, ReplacePendingItemIfDiffernetURL) { |
| // Tests that when given a pending item, adding a new pending item with the same |
| // URL doesn't replace the existing pending item if new pending item is not a |
| // form submission. |
| -TEST_F(NavigationManagerTest, NotReplaceSameUrlPendingItemIfNotFormSubmission) { |
| +TEST_P(NavigationManagerTest, NotReplaceSameUrlPendingItemIfNotFormSubmission) { |
| GURL existing_url = GURL("http://www.existing.com"); |
| navigation_manager()->AddPendingItem( |
| existing_url, Referrer(), ui::PAGE_TRANSITION_TYPED, |
| @@ -591,7 +603,7 @@ TEST_F(NavigationManagerTest, NotReplaceSameUrlPendingItemIfNotFormSubmission) { |
| // Tests that when given a pending item, adding a new pending item with the same |
| // URL replaces the existing pending item if new pending item is a form |
| // submission while existing pending item is not. |
| -TEST_F(NavigationManagerTest, ReplaceSameUrlPendingItemIfFormSubmission) { |
| +TEST_P(NavigationManagerTest, ReplaceSameUrlPendingItemIfFormSubmission) { |
| GURL existing_url = GURL("http://www.existing.com"); |
| navigation_manager()->AddPendingItem( |
| existing_url, Referrer(), ui::PAGE_TRANSITION_TYPED, |
| @@ -617,7 +629,7 @@ TEST_F(NavigationManagerTest, ReplaceSameUrlPendingItemIfFormSubmission) { |
| // Tests that when given a pending item, adding a new pending item with the same |
| // URL doesn't replace the existing pending item if the user agent override |
| // option is INHERIT. |
| -TEST_F(NavigationManagerTest, NotReplaceSameUrlPendingItemIfOverrideInherit) { |
| +TEST_P(NavigationManagerTest, NotReplaceSameUrlPendingItemIfOverrideInherit) { |
| GURL existing_url = GURL("http://www.existing.com"); |
| navigation_manager()->AddPendingItem( |
| existing_url, Referrer(), ui::PAGE_TRANSITION_TYPED, |
| @@ -644,7 +656,7 @@ TEST_F(NavigationManagerTest, NotReplaceSameUrlPendingItemIfOverrideInherit) { |
| // Tests that when given a pending item, adding a new pending item with the same |
| // URL replaces the existing pending item if the user agent override option is |
| // DESKTOP. |
| -TEST_F(NavigationManagerTest, ReplaceSameUrlPendingItemIfOverrideDesktop) { |
| +TEST_P(NavigationManagerTest, ReplaceSameUrlPendingItemIfOverrideDesktop) { |
| GURL existing_url = GURL("http://www.existing.com"); |
| navigation_manager()->AddPendingItem( |
| existing_url, Referrer(), ui::PAGE_TRANSITION_TYPED, |
| @@ -672,7 +684,7 @@ TEST_F(NavigationManagerTest, ReplaceSameUrlPendingItemIfOverrideDesktop) { |
| // Tests that when given a pending item, adding a new pending item with the same |
| // URL replaces the existing pending item if the user agent override option is |
| // MOBILE. |
| -TEST_F(NavigationManagerTest, ReplaceSameUrlPendingItemIfOverrideMobile) { |
| +TEST_P(NavigationManagerTest, ReplaceSameUrlPendingItemIfOverrideMobile) { |
| GURL existing_url = GURL("http://www.existing.com"); |
| navigation_manager()->AddPendingItem( |
| existing_url, Referrer(), ui::PAGE_TRANSITION_TYPED, |
| @@ -699,7 +711,7 @@ TEST_F(NavigationManagerTest, ReplaceSameUrlPendingItemIfOverrideMobile) { |
| // Tests that when the last committed item exists, adding a pending item |
| // succeeds if the new item's URL is different from the last committed item. |
| -TEST_F(NavigationManagerTest, AddPendingItemIfDiffernetURL) { |
| +TEST_P(NavigationManagerTest, AddPendingItemIfDiffernetURL) { |
| GURL existing_url = GURL("http://www.existing.com"); |
| navigation_manager()->AddPendingItem( |
| existing_url, Referrer(), ui::PAGE_TRANSITION_TYPED, |
| @@ -723,7 +735,7 @@ TEST_F(NavigationManagerTest, AddPendingItemIfDiffernetURL) { |
| // Tests that when the last committed item exists, adding a pending item with |
| // the same URL fails if the new item is not form submission. |
| -TEST_F(NavigationManagerTest, NotAddSameUrlPendingItemIfNotFormSubmission) { |
| +TEST_P(NavigationManagerTest, NotAddSameUrlPendingItemIfNotFormSubmission) { |
| GURL existing_url = GURL("http://www.existing.com"); |
| navigation_manager()->AddPendingItem( |
| existing_url, Referrer(), ui::PAGE_TRANSITION_TYPED, |
| @@ -748,7 +760,7 @@ TEST_F(NavigationManagerTest, NotAddSameUrlPendingItemIfNotFormSubmission) { |
| // Tests that when the last committed item exists, adding a pending item with |
| // the same URL succeeds if the new item is a form submission while the last |
| // committed item is not. |
| -TEST_F(NavigationManagerTest, AddSameUrlPendingItemIfFormSubmission) { |
| +TEST_P(NavigationManagerTest, AddSameUrlPendingItemIfFormSubmission) { |
| GURL existing_url = GURL("http://www.existing.com"); |
| navigation_manager()->AddPendingItem( |
| existing_url, Referrer(), ui::PAGE_TRANSITION_TYPED, |
| @@ -777,7 +789,7 @@ TEST_F(NavigationManagerTest, AddSameUrlPendingItemIfFormSubmission) { |
| // Tests that when the last committed item exists, adding a pending item with |
| // the same URL fails if both the new item and the last committed item are form |
| // submissions. |
| -TEST_F(NavigationManagerTest, |
| +TEST_P(NavigationManagerTest, |
| NotAddSameUrlPendingItemIfDuplicateFormSubmission) { |
| GURL existing_url = GURL("http://www.existing.com"); |
| navigation_manager()->AddPendingItem( |
| @@ -799,7 +811,7 @@ TEST_F(NavigationManagerTest, |
| // Tests that when the last committed item exists, adding a pending item with |
| // the same URL fails if the user agent override option is INHERIT. |
| -TEST_F(NavigationManagerTest, NotAddSameUrlPendingItemIfOverrideInherit) { |
| +TEST_P(NavigationManagerTest, NotAddSameUrlPendingItemIfOverrideInherit) { |
| GURL existing_url = GURL("http://www.existing.com"); |
| navigation_manager()->AddPendingItem( |
| existing_url, Referrer(), ui::PAGE_TRANSITION_TYPED, |
| @@ -822,7 +834,7 @@ TEST_F(NavigationManagerTest, NotAddSameUrlPendingItemIfOverrideInherit) { |
| // Tests that when the last committed item exists, adding a pending item with |
| // the same URL succeeds if the user agent override option is DESKTOP. |
| -TEST_F(NavigationManagerTest, AddSameUrlPendingItemIfOverrideDesktop) { |
| +TEST_P(NavigationManagerTest, AddSameUrlPendingItemIfOverrideDesktop) { |
| GURL existing_url = GURL("http://www.existing.com"); |
| navigation_manager()->AddPendingItem( |
| existing_url, Referrer(), ui::PAGE_TRANSITION_TYPED, |
| @@ -851,7 +863,7 @@ TEST_F(NavigationManagerTest, AddSameUrlPendingItemIfOverrideDesktop) { |
| // Tests that when the last committed item exists, adding a pending item with |
| // the same URL succeeds if the user agent override option is MOBILE. |
| -TEST_F(NavigationManagerTest, AddSameUrlPendingItemIfOverrideMobile) { |
| +TEST_P(NavigationManagerTest, AddSameUrlPendingItemIfOverrideMobile) { |
| GURL existing_url = GURL("http://www.existing.com"); |
| navigation_manager()->AddPendingItem( |
| existing_url, Referrer(), ui::PAGE_TRANSITION_TYPED, |
| @@ -879,7 +891,7 @@ TEST_F(NavigationManagerTest, AddSameUrlPendingItemIfOverrideMobile) { |
| // Tests that desktop user agent can be enforced to use for next pending item |
| // when UserAgentOverrideOption is DESKTOP. |
| -TEST_F(NavigationManagerTest, OverrideUserAgentWithDesktop) { |
| +TEST_P(NavigationManagerTest, OverrideUserAgentWithDesktop) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.1.com"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| web::NavigationInitiationType::USER_INITIATED, |
| @@ -902,7 +914,7 @@ TEST_F(NavigationManagerTest, OverrideUserAgentWithDesktop) { |
| // Tests that mobile user agent can be enforced to use for next pending item |
| // when UserAgentOverrideOption is MOBILE. |
| -TEST_F(NavigationManagerTest, OverrideUserAgentWithMobile) { |
| +TEST_P(NavigationManagerTest, OverrideUserAgentWithMobile) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.1.com"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| web::NavigationInitiationType::USER_INITIATED, |
| @@ -924,7 +936,7 @@ TEST_F(NavigationManagerTest, OverrideUserAgentWithMobile) { |
| // Tests that the UserAgentType of an INHERIT item is propagated to subsequent |
| // item when UserAgentOverrideOption is INHERIT |
| -TEST_F(NavigationManagerTest, OverrideUserAgentWithInheritAfterInherit) { |
| +TEST_P(NavigationManagerTest, OverrideUserAgentWithInheritAfterInherit) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.1.com"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| web::NavigationInitiationType::USER_INITIATED, |
| @@ -946,7 +958,7 @@ TEST_F(NavigationManagerTest, OverrideUserAgentWithInheritAfterInherit) { |
| // Tests that the UserAgentType of a MOBILE item is propagated to subsequent |
| // item when UserAgentOverrideOption is INHERIT |
| -TEST_F(NavigationManagerTest, OverrideUserAgentWithInheritAfterMobile) { |
| +TEST_P(NavigationManagerTest, OverrideUserAgentWithInheritAfterMobile) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.1.com"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| web::NavigationInitiationType::USER_INITIATED, |
| @@ -968,7 +980,7 @@ TEST_F(NavigationManagerTest, OverrideUserAgentWithInheritAfterMobile) { |
| // Tests that the UserAgentType of a DESKTOP item is propagated to subsequent |
| // item when UserAgentOverrideOption is INHERIT |
| -TEST_F(NavigationManagerTest, OverrideUserAgentWithInheritAfterDesktop) { |
| +TEST_P(NavigationManagerTest, OverrideUserAgentWithInheritAfterDesktop) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.1.com"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| web::NavigationInitiationType::USER_INITIATED, |
| @@ -990,7 +1002,7 @@ TEST_F(NavigationManagerTest, OverrideUserAgentWithInheritAfterDesktop) { |
| // Tests that the UserAgentType is propagated to subsequent NavigationItems if |
| // a native URL exists in between naviations. |
| -TEST_F(NavigationManagerTest, UserAgentTypePropagationPastNativeItems) { |
| +TEST_P(NavigationManagerTest, UserAgentTypePropagationPastNativeItems) { |
| // GURL::Replacements that will replace a GURL's scheme with the test native |
| // scheme. |
| GURL::Replacements native_scheme_replacement; |
| @@ -1047,7 +1059,7 @@ TEST_F(NavigationManagerTest, UserAgentTypePropagationPastNativeItems) { |
| // Tests that adding transient item for a pending item with mobile user agent |
| // type results in a transient item with mobile user agent type. |
| -TEST_F(NavigationManagerTest, AddTransientItemForMobilePendingItem) { |
| +TEST_P(NavigationManagerTest, AddTransientItemForMobilePendingItem) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.url.com"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| web::NavigationInitiationType::USER_INITIATED, |
| @@ -1066,7 +1078,7 @@ TEST_F(NavigationManagerTest, AddTransientItemForMobilePendingItem) { |
| // Tests that adding transient item for a pending item with desktop user agent |
| // type results in a transient item with desktop user agent type. |
| -TEST_F(NavigationManagerTest, AddTransientItemForDesktopPendingItem) { |
| +TEST_P(NavigationManagerTest, AddTransientItemForDesktopPendingItem) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.url.com"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| web::NavigationInitiationType::USER_INITIATED, |
| @@ -1085,7 +1097,7 @@ TEST_F(NavigationManagerTest, AddTransientItemForDesktopPendingItem) { |
| // Tests that calling |Reload| with web::ReloadType::NORMAL is no-op when there |
| // are no transient, pending and committed items. |
| -TEST_F(NavigationManagerTest, ReloadEmptyWithNormalType) { |
| +TEST_P(NavigationManagerTest, ReloadEmptyWithNormalType) { |
| ASSERT_FALSE(navigation_manager()->GetTransientItem()); |
| ASSERT_FALSE(navigation_manager()->GetPendingItem()); |
| ASSERT_FALSE(navigation_manager()->GetLastCommittedItem()); |
| @@ -1101,7 +1113,7 @@ TEST_F(NavigationManagerTest, ReloadEmptyWithNormalType) { |
| // Tests that calling |Reload| with web::ReloadType::NORMAL leaves the url of |
| // the renderer initiated pending item unchanged when there is one. |
| -TEST_F(NavigationManagerTest, ReloadRendererPendingItemWithNormalType) { |
| +TEST_P(NavigationManagerTest, ReloadRendererPendingItemWithNormalType) { |
| GURL url_before_reload = GURL("http://www.url.com"); |
| navigation_manager()->AddPendingItem( |
| url_before_reload, Referrer(), ui::PAGE_TRANSITION_TYPED, |
| @@ -1119,7 +1131,7 @@ TEST_F(NavigationManagerTest, ReloadRendererPendingItemWithNormalType) { |
| // Tests that calling |Reload| with web::ReloadType::NORMAL leaves the url of |
| // the user initiated pending item unchanged when there is one. |
| -TEST_F(NavigationManagerTest, ReloadUserPendingItemWithNormalType) { |
| +TEST_P(NavigationManagerTest, ReloadUserPendingItemWithNormalType) { |
| GURL url_before_reload = GURL("http://www.url.com"); |
| navigation_manager()->AddPendingItem( |
| url_before_reload, Referrer(), ui::PAGE_TRANSITION_TYPED, |
| @@ -1137,7 +1149,7 @@ TEST_F(NavigationManagerTest, ReloadUserPendingItemWithNormalType) { |
| // Tests that calling |Reload| with web::ReloadType::NORMAL leaves the url of |
| // the last committed item unchanged when there is no pending item. |
| -TEST_F(NavigationManagerTest, ReloadLastCommittedItemWithNormalType) { |
| +TEST_P(NavigationManagerTest, ReloadLastCommittedItemWithNormalType) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.url.com/0"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| web::NavigationInitiationType::USER_INITIATED, |
| @@ -1163,7 +1175,7 @@ TEST_F(NavigationManagerTest, ReloadLastCommittedItemWithNormalType) { |
| // Tests that calling |Reload| with web::ReloadType::NORMAL leaves the url of |
| // the last committed item unchanged when there is no pending item, but there |
| // forward items after last committed item. |
| -TEST_F(NavigationManagerTest, |
| +TEST_P(NavigationManagerTest, |
| ReloadLastCommittedItemWithNormalTypeWithForwardItems) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.url.com/0"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| @@ -1198,7 +1210,7 @@ TEST_F(NavigationManagerTest, |
| // Tests that calling |Reload| with web::ReloadType::ORIGINAL_REQUEST_URL is |
| // no-op when there are no transient, pending and committed items. |
| -TEST_F(NavigationManagerTest, ReloadEmptyWithOriginalType) { |
| +TEST_P(NavigationManagerTest, ReloadEmptyWithOriginalType) { |
| ASSERT_FALSE(navigation_manager()->GetTransientItem()); |
| ASSERT_FALSE(navigation_manager()->GetPendingItem()); |
| ASSERT_FALSE(navigation_manager()->GetLastCommittedItem()); |
| @@ -1215,7 +1227,7 @@ TEST_F(NavigationManagerTest, ReloadEmptyWithOriginalType) { |
| // Tests that calling |Reload| with web::ReloadType::ORIGINAL_REQUEST_URL |
| // changes the renderer initiated pending item's url to its original request url |
| // when there is one. |
| -TEST_F(NavigationManagerTest, ReloadRendererPendingItemWithOriginalType) { |
| +TEST_P(NavigationManagerTest, ReloadRendererPendingItemWithOriginalType) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.url.com"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| web::NavigationInitiationType::RENDERER_INITIATED, |
| @@ -1237,7 +1249,7 @@ TEST_F(NavigationManagerTest, ReloadRendererPendingItemWithOriginalType) { |
| // Tests that calling |Reload| with web::ReloadType::ORIGINAL_REQUEST_URL |
| // changes the user initiated pending item's url to its original request url |
| // when there is one. |
| -TEST_F(NavigationManagerTest, ReloadUserPendingItemWithOriginalType) { |
| +TEST_P(NavigationManagerTest, ReloadUserPendingItemWithOriginalType) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.url.com"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| web::NavigationInitiationType::USER_INITIATED, |
| @@ -1259,7 +1271,7 @@ TEST_F(NavigationManagerTest, ReloadUserPendingItemWithOriginalType) { |
| // Tests that calling |Reload| with web::ReloadType::ORIGINAL_REQUEST_URL |
| // changes the last committed item's url to its original request url when there |
| // is no pending item. |
| -TEST_F(NavigationManagerTest, ReloadLastCommittedItemWithOriginalType) { |
| +TEST_P(NavigationManagerTest, ReloadLastCommittedItemWithOriginalType) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.url.com/0"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| web::NavigationInitiationType::USER_INITIATED, |
| @@ -1288,7 +1300,7 @@ TEST_F(NavigationManagerTest, ReloadLastCommittedItemWithOriginalType) { |
| // Tests that calling |Reload| with web::ReloadType::ORIGINAL_REQUEST_URL |
| // changes the last committed item's url to its original request url when there |
| // is no pending item, but there are forward items after last committed item. |
| -TEST_F(NavigationManagerTest, |
| +TEST_P(NavigationManagerTest, |
| ReloadLastCommittedItemWithOriginalTypeWithForwardItems) { |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.url.com/0"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| @@ -1326,7 +1338,7 @@ TEST_F(NavigationManagerTest, |
| // Tests that app-specific URLs are not rewritten for renderer-initiated loads |
| // unless requested by a page with app-specific url. |
| -TEST_F(NavigationManagerTest, RewritingAppSpecificUrls) { |
| +TEST_P(NavigationManagerTest, RewritingAppSpecificUrls) { |
| // URL should not be rewritten as there is no committed URL. |
| GURL url1(url::SchemeHostPort(kSchemeToRewrite, "test", 0).Serialize()); |
| navigation_manager()->AddPendingItem( |
| @@ -1367,7 +1379,7 @@ TEST_F(NavigationManagerTest, RewritingAppSpecificUrls) { |
| } |
| // Tests that GetIndexOfItem() returns the correct values. |
| -TEST_F(NavigationManagerTest, GetIndexOfItem) { |
| +TEST_P(NavigationManagerTest, GetIndexOfItem) { |
| // Create two items and add them to the NavigationManagerImpl. |
| navigation_manager()->AddPendingItem( |
| GURL("http://www.url.com/0"), Referrer(), ui::PAGE_TRANSITION_TYPED, |
| @@ -1390,4 +1402,9 @@ TEST_F(NavigationManagerTest, GetIndexOfItem) { |
| EXPECT_EQ(-1, navigation_manager()->GetIndexOfItem(item_not_found.get())); |
| } |
| +INSTANTIATE_TEST_CASE_P( |
| + ProgrammaticNavigationManagerTest, |
| + NavigationManagerTest, |
| + ::testing::Values(true /* test_legacy_navigation_manager */)); |
|
Eugene But (OOO till 7-30)
2017/06/20 22:49:03
Is it possible to pass NavigationManagerImpl insta
danyao
2017/06/20 23:00:45
It has to be a copyable type. We could use raw poi
Eugene But (OOO till 7-30)
2017/06/21 00:15:37
Thanks! I thought it is possible to pass std::uniq
|
| + |
| } // namespace web |