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

Side by Side Diff: ios/web/web_state/ui/crw_wk_navigation_states_unittest.mm

Issue 2901633002: Replaced NavigationContext::IsErrorPage with NavigationContext::GetError (Closed)
Patch Set: Created 3 years, 7 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 | « ios/web/web_state/ui/crw_wk_navigation_states.mm ('k') | ios/web/web_state/web_state_impl.mm » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 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 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 #import "ios/web/web_state/ui/crw_wk_navigation_states.h" 5 #import "ios/web/web_state/ui/crw_wk_navigation_states.h"
6 6
7 #import <WebKit/WebKit.h> 7 #import <WebKit/WebKit.h>
8 8
9 #import "base/mac/scoped_nsobject.h" 9 #import "base/mac/scoped_nsobject.h"
10 #include "ios/web/web_state/navigation_context_impl.h" 10 #import "ios/web/web_state/navigation_context_impl.h"
11 #include "net/http/http_response_headers.h" 11 #include "net/http/http_response_headers.h"
12 #include "testing/gtest/include/gtest/gtest.h" 12 #include "testing/gtest/include/gtest/gtest.h"
13 #include "testing/platform_test.h" 13 #include "testing/platform_test.h"
14 #include "url/gurl.h" 14 #include "url/gurl.h"
15 15
16 namespace { 16 namespace {
17 const char kTestUrl1[] = "https://test1.test/"; 17 const char kTestUrl1[] = "https://test1.test/";
18 const char kTestUrl2[] = "https://test2.test/"; 18 const char kTestUrl2[] = "https://test2.test/";
19 } 19 }
20 20
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
87 NavigationContextImpl::CreateNavigationContext(nullptr /*web_state*/, 87 NavigationContextImpl::CreateNavigationContext(nullptr /*web_state*/,
88 GURL(kTestUrl1)); 88 GURL(kTestUrl1));
89 context1->SetIsSameDocument(true); 89 context1->SetIsSameDocument(true);
90 [states_ setContext:std::move(context1) forNavigation:navigation1_]; 90 [states_ setContext:std::move(context1) forNavigation:navigation1_];
91 EXPECT_FALSE([states_ contextForNavigation:navigation2_]); 91 EXPECT_FALSE([states_ contextForNavigation:navigation2_]);
92 EXPECT_FALSE([states_ contextForNavigation:navigation3_]); 92 EXPECT_FALSE([states_ contextForNavigation:navigation3_]);
93 ASSERT_TRUE([states_ contextForNavigation:navigation1_]); 93 ASSERT_TRUE([states_ contextForNavigation:navigation1_]);
94 EXPECT_EQ(GURL(kTestUrl1), 94 EXPECT_EQ(GURL(kTestUrl1),
95 [states_ contextForNavigation:navigation1_]->GetUrl()); 95 [states_ contextForNavigation:navigation1_]->GetUrl());
96 EXPECT_TRUE([states_ contextForNavigation:navigation1_]->IsSameDocument()); 96 EXPECT_TRUE([states_ contextForNavigation:navigation1_]->IsSameDocument());
97 EXPECT_FALSE([states_ contextForNavigation:navigation1_]->IsErrorPage()); 97 EXPECT_FALSE([states_ contextForNavigation:navigation1_]->GetError());
98 98
99 // Replace existing context. 99 // Replace existing context.
100 std::unique_ptr<web::NavigationContextImpl> context2 = 100 std::unique_ptr<web::NavigationContextImpl> context2 =
101 NavigationContextImpl::CreateNavigationContext(nullptr /*web_state*/, 101 NavigationContextImpl::CreateNavigationContext(nullptr /*web_state*/,
102 GURL(kTestUrl2)); 102 GURL(kTestUrl2));
103 context2->SetIsErrorPage(true); 103 NSError* error = [[[NSError alloc] init] autorelease];
104 context2->SetError(error);
104 [states_ setContext:std::move(context2) forNavigation:navigation1_]; 105 [states_ setContext:std::move(context2) forNavigation:navigation1_];
105 EXPECT_FALSE([states_ contextForNavigation:navigation2_]); 106 EXPECT_FALSE([states_ contextForNavigation:navigation2_]);
106 EXPECT_FALSE([states_ contextForNavigation:navigation3_]); 107 EXPECT_FALSE([states_ contextForNavigation:navigation3_]);
107 ASSERT_TRUE([states_ contextForNavigation:navigation1_]); 108 ASSERT_TRUE([states_ contextForNavigation:navigation1_]);
108 EXPECT_EQ(GURL(kTestUrl2), 109 EXPECT_EQ(GURL(kTestUrl2),
109 [states_ contextForNavigation:navigation1_]->GetUrl()); 110 [states_ contextForNavigation:navigation1_]->GetUrl());
110 EXPECT_FALSE([states_ contextForNavigation:navigation1_]->IsSameDocument()); 111 EXPECT_FALSE([states_ contextForNavigation:navigation1_]->IsSameDocument());
111 EXPECT_TRUE([states_ contextForNavigation:navigation1_]->IsErrorPage()); 112 EXPECT_EQ(error, [states_ contextForNavigation:navigation1_]->GetError());
112 } 113 }
113 114
114 // Tests null WKNavigation object. 115 // Tests null WKNavigation object.
115 TEST_F(CRWWKNavigationStatesTest, NullNavigation) { 116 TEST_F(CRWWKNavigationStatesTest, NullNavigation) {
116 // navigation_1 is the only navigation and it is the latest. 117 // navigation_1 is the only navigation and it is the latest.
117 [states_ setState:WKNavigationState::REQUESTED forNavigation:navigation1_]; 118 [states_ setState:WKNavigationState::REQUESTED forNavigation:navigation1_];
118 ASSERT_EQ(navigation1_, [states_ lastAddedNavigation]); 119 ASSERT_EQ(navigation1_, [states_ lastAddedNavigation]);
119 EXPECT_EQ(WKNavigationState::REQUESTED, [states_ lastAddedNavigationState]); 120 EXPECT_EQ(WKNavigationState::REQUESTED, [states_ lastAddedNavigationState]);
120 121
121 // null navigation is added later and hence the latest. 122 // null navigation is added later and hence the latest.
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
182 [states_ removeNavigation:navigation2_]; 183 [states_ removeNavigation:navigation2_];
183 ASSERT_EQ(1U, [states_ pendingNavigations].count); 184 ASSERT_EQ(1U, [states_ pendingNavigations].count);
184 EXPECT_TRUE([[states_ pendingNavigations] containsObject:navigation3_]); 185 EXPECT_TRUE([[states_ pendingNavigations] containsObject:navigation3_]);
185 186
186 // Fail navigation_3. 187 // Fail navigation_3.
187 [states_ setState:WKNavigationState::FAILED forNavigation:navigation3_]; 188 [states_ setState:WKNavigationState::FAILED forNavigation:navigation3_];
188 ASSERT_EQ(0U, [states_ pendingNavigations].count); 189 ASSERT_EQ(0U, [states_ pendingNavigations].count);
189 } 190 }
190 191
191 } // namespace web 192 } // namespace web
OLDNEW
« no previous file with comments | « ios/web/web_state/ui/crw_wk_navigation_states.mm ('k') | ios/web/web_state/web_state_impl.mm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698