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

Side by Side Diff: ios/web/shell/test/redirect_egtest.mm

Issue 2343453002: [ios] Use +[ShellEarlGrey loadURL:] for page loading in EG tests. (Closed)
Patch Set: Rebased Created 4 years, 3 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/shell/test/plugin_placeholder_egtest.mm ('k') | no next file » | 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 <EarlGrey/EarlGrey.h> 5 #import <EarlGrey/EarlGrey.h>
6 6
7 #import "ios/web/public/test/http_server.h" 7 #import "ios/web/public/test/http_server.h"
8 #include "ios/web/public/test/http_server_util.h" 8 #include "ios/web/public/test/http_server_util.h"
9 #include "ios/web/public/test/response_providers/html_response_provider.h" 9 #include "ios/web/public/test/response_providers/html_response_provider.h"
10 #include "ios/web/public/test/response_providers/html_response_provider_impl.h" 10 #include "ios/web/public/test/response_providers/html_response_provider_impl.h"
11 #include "ios/web/shell/test/app/navigation_test_util.h"
12 #import "ios/web/shell/test/earl_grey/shell_base_test_case.h" 11 #import "ios/web/shell/test/earl_grey/shell_base_test_case.h"
12 #import "ios/web/shell/test/earl_grey/shell_earl_grey.h"
13 #import "ios/web/shell/test/earl_grey/shell_matchers.h" 13 #import "ios/web/shell/test/earl_grey/shell_matchers.h"
14 #include "net/http/http_status_code.h" 14 #include "net/http/http_status_code.h"
15 15
16 #if !defined(__has_feature) || !__has_feature(objc_arc) 16 #if !defined(__has_feature) || !__has_feature(objc_arc)
17 #error "This file requires ARC support." 17 #error "This file requires ARC support."
18 #endif 18 #endif
19 19
20 using web::addressFieldText; 20 using web::addressFieldText;
21 using web::test::HttpServer; 21 using web::test::HttpServer;
22 using web::webViewContainingText; 22 using web::webViewContainingText;
(...skipping 20 matching lines...) Expand all
43 responses[thirdRedirectURL] = HtmlResponseProviderImpl::GetRedirectResponse( 43 responses[thirdRedirectURL] = HtmlResponseProviderImpl::GetRedirectResponse(
44 destinationURL, net::HTTP_MOVED_PERMANENTLY); 44 destinationURL, net::HTTP_MOVED_PERMANENTLY);
45 const char kFinalPageContent[] = "testMultipleRedirects complete"; 45 const char kFinalPageContent[] = "testMultipleRedirects complete";
46 responses[destinationURL] = 46 responses[destinationURL] =
47 HtmlResponseProviderImpl::GetSimpleResponse(kFinalPageContent); 47 HtmlResponseProviderImpl::GetSimpleResponse(kFinalPageContent);
48 std::unique_ptr<web::DataResponseProvider> provider( 48 std::unique_ptr<web::DataResponseProvider> provider(
49 new HtmlResponseProvider(responses)); 49 new HtmlResponseProvider(responses));
50 web::test::SetUpHttpServer(std::move(provider)); 50 web::test::SetUpHttpServer(std::move(provider));
51 51
52 // Load first URL and expect destination URL to load. 52 // Load first URL and expect destination URL to load.
53 web::shell_test_util::LoadUrl(firstRedirectURL); 53 [ShellEarlGrey loadURL:firstRedirectURL];
54 [[EarlGrey selectElementWithMatcher:addressFieldText(destinationURL.spec())] 54 [[EarlGrey selectElementWithMatcher:addressFieldText(destinationURL.spec())]
55 assertWithMatcher:grey_notNil()]; 55 assertWithMatcher:grey_notNil()];
56 [[EarlGrey selectElementWithMatcher:webViewContainingText(kFinalPageContent)] 56 [[EarlGrey selectElementWithMatcher:webViewContainingText(kFinalPageContent)]
57 assertWithMatcher:grey_notNil()]; 57 assertWithMatcher:grey_notNil()];
58 } 58 }
59 59
60 // Tests simple 301 redirection. 60 // Tests simple 301 redirection.
61 - (void)testRedirection301 { 61 - (void)testRedirection301 {
62 // Create map of canned responses and set up the test HTML server. 62 // Create map of canned responses and set up the test HTML server.
63 std::map<GURL, HtmlResponseProviderImpl::Response> responses; 63 std::map<GURL, HtmlResponseProviderImpl::Response> responses;
64 const GURL firstRedirectURL = HttpServer::MakeUrl("http://firstRedirect/"); 64 const GURL firstRedirectURL = HttpServer::MakeUrl("http://firstRedirect/");
65 const GURL destinationURL = HttpServer::MakeUrl("http://destination/"); 65 const GURL destinationURL = HttpServer::MakeUrl("http://destination/");
66 66
67 responses[firstRedirectURL] = HtmlResponseProviderImpl::GetRedirectResponse( 67 responses[firstRedirectURL] = HtmlResponseProviderImpl::GetRedirectResponse(
68 destinationURL, net::HTTP_MOVED_PERMANENTLY); 68 destinationURL, net::HTTP_MOVED_PERMANENTLY);
69 const char kFinalPageContent[] = "testRedirection301 complete"; 69 const char kFinalPageContent[] = "testRedirection301 complete";
70 responses[destinationURL] = 70 responses[destinationURL] =
71 HtmlResponseProviderImpl::GetSimpleResponse(kFinalPageContent); 71 HtmlResponseProviderImpl::GetSimpleResponse(kFinalPageContent);
72 std::unique_ptr<web::DataResponseProvider> provider( 72 std::unique_ptr<web::DataResponseProvider> provider(
73 new HtmlResponseProvider(responses)); 73 new HtmlResponseProvider(responses));
74 web::test::SetUpHttpServer(std::move(provider)); 74 web::test::SetUpHttpServer(std::move(provider));
75 75
76 // Load first URL and expect destination URL to load. 76 // Load first URL and expect destination URL to load.
77 web::shell_test_util::LoadUrl(firstRedirectURL); 77 [ShellEarlGrey loadURL:firstRedirectURL];
78 [[EarlGrey selectElementWithMatcher:addressFieldText(destinationURL.spec())] 78 [[EarlGrey selectElementWithMatcher:addressFieldText(destinationURL.spec())]
79 assertWithMatcher:grey_notNil()]; 79 assertWithMatcher:grey_notNil()];
80 [[EarlGrey selectElementWithMatcher:webViewContainingText(kFinalPageContent)] 80 [[EarlGrey selectElementWithMatcher:webViewContainingText(kFinalPageContent)]
81 assertWithMatcher:grey_notNil()]; 81 assertWithMatcher:grey_notNil()];
82 } 82 }
83 83
84 // Tests simple 302 redirection. 84 // Tests simple 302 redirection.
85 - (void)testRedirection302 { 85 - (void)testRedirection302 {
86 // Create map of canned responses and set up the test HTML server. 86 // Create map of canned responses and set up the test HTML server.
87 std::map<GURL, HtmlResponseProviderImpl::Response> responses; 87 std::map<GURL, HtmlResponseProviderImpl::Response> responses;
88 const GURL firstRedirectURL = HttpServer::MakeUrl("http://firstRedirect/"); 88 const GURL firstRedirectURL = HttpServer::MakeUrl("http://firstRedirect/");
89 const GURL destinationURL = HttpServer::MakeUrl("http://destination/"); 89 const GURL destinationURL = HttpServer::MakeUrl("http://destination/");
90 90
91 responses[firstRedirectURL] = HtmlResponseProviderImpl::GetRedirectResponse( 91 responses[firstRedirectURL] = HtmlResponseProviderImpl::GetRedirectResponse(
92 destinationURL, net::HTTP_FOUND); 92 destinationURL, net::HTTP_FOUND);
93 const char kFinalPageContent[] = "testRedirection302 complete"; 93 const char kFinalPageContent[] = "testRedirection302 complete";
94 responses[destinationURL] = 94 responses[destinationURL] =
95 HtmlResponseProviderImpl::GetSimpleResponse(kFinalPageContent); 95 HtmlResponseProviderImpl::GetSimpleResponse(kFinalPageContent);
96 std::unique_ptr<web::DataResponseProvider> provider( 96 std::unique_ptr<web::DataResponseProvider> provider(
97 new HtmlResponseProvider(responses)); 97 new HtmlResponseProvider(responses));
98 web::test::SetUpHttpServer(std::move(provider)); 98 web::test::SetUpHttpServer(std::move(provider));
99 99
100 // Load first URL and expect destination URL to load. 100 // Load first URL and expect destination URL to load.
101 web::shell_test_util::LoadUrl(firstRedirectURL); 101 [ShellEarlGrey loadURL:firstRedirectURL];
102 [[EarlGrey selectElementWithMatcher:addressFieldText(destinationURL.spec())] 102 [[EarlGrey selectElementWithMatcher:addressFieldText(destinationURL.spec())]
103 assertWithMatcher:grey_notNil()]; 103 assertWithMatcher:grey_notNil()];
104 [[EarlGrey selectElementWithMatcher:webViewContainingText(kFinalPageContent)] 104 [[EarlGrey selectElementWithMatcher:webViewContainingText(kFinalPageContent)]
105 assertWithMatcher:grey_notNil()]; 105 assertWithMatcher:grey_notNil()];
106 } 106 }
107 107
108 @end 108 @end
OLDNEW
« no previous file with comments | « ios/web/shell/test/plugin_placeholder_egtest.mm ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698