| Index: ios/web/shell/test/web_shell_navigation_egtest.mm
|
| diff --git a/ios/web/shell/test/web_shell_navigation_egtest.mm b/ios/web/shell/test/web_shell_navigation_egtest.mm
|
| deleted file mode 100644
|
| index 6a69776cc8e0e18f44ed69f788c4a5d0b05acfd5..0000000000000000000000000000000000000000
|
| --- a/ios/web/shell/test/web_shell_navigation_egtest.mm
|
| +++ /dev/null
|
| @@ -1,184 +0,0 @@
|
| -// Copyright 2016 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#import <UIKit/UIKit.h>
|
| -#import <WebKit/WebKit.h>
|
| -#import <XCTest/XCTest.h>
|
| -
|
| -#import <EarlGrey/EarlGrey.h>
|
| -
|
| -#include "base/strings/sys_string_conversions.h"
|
| -#import "ios/web/public/test/http_server.h"
|
| -#include "ios/web/public/test/http_server_util.h"
|
| -#include "ios/web/shell/test/app/navigation_test_util.h"
|
| -#include "ios/web/shell/test/app/web_view_interaction_test_util.h"
|
| -#import "ios/web/shell/test/earl_grey/shell_base_test_case.h"
|
| -#import "ios/web/shell/test/earl_grey/shell_matchers.h"
|
| -
|
| -#if !defined(__has_feature) || !__has_feature(objc_arc)
|
| -#error "This file requires ARC support."
|
| -#endif
|
| -
|
| -// Navigation test cases for the web shell. These are Earl Grey integration
|
| -// tests, which are based on XCTest.
|
| -@interface CRWWebShellNavigationTest : ShellBaseTestCase
|
| -
|
| -@end
|
| -
|
| -@implementation CRWWebShellNavigationTest
|
| -
|
| -// Tests clicking a link to about:blank.
|
| -- (void)testNavigationLinkToAboutBlank {
|
| - const GURL URL = web::test::HttpServer::MakeUrl(
|
| - "http://ios/web/shell/test/http_server_files/basic_navigation_test.html");
|
| - web::test::SetUpFileBasedHttpServer();
|
| -
|
| - web::shell_test_util::LoadUrl(URL);
|
| - [[EarlGrey selectElementWithMatcher:web::addressFieldText(URL.spec())]
|
| - assertWithMatcher:grey_notNil()];
|
| -
|
| - web::shell_test_util::TapWebViewElementWithId(
|
| - "basic-link-navigation-to-about-blank");
|
| -
|
| - [[EarlGrey selectElementWithMatcher:web::addressFieldText("about:blank")]
|
| - assertWithMatcher:grey_notNil()];
|
| -}
|
| -
|
| -// Tests the back and forward button after entering two URLs.
|
| -- (void)testNavigationBackAndForward {
|
| - // Create map of canned responses and set up the test HTML server.
|
| - std::map<GURL, std::string> responses;
|
| - const GURL URL1 = web::test::HttpServer::MakeUrl("http://firstURL");
|
| - std::string response1 = "Test Page 1";
|
| - responses[URL1] = response1;
|
| -
|
| - const GURL URL2 = web::test::HttpServer::MakeUrl("http://secondURL");
|
| - std::string response2 = "Test Page 2";
|
| - responses[URL2] = response2;
|
| -
|
| - web::test::SetUpSimpleHttpServer(responses);
|
| -
|
| - web::shell_test_util::LoadUrl(URL1);
|
| - [[EarlGrey selectElementWithMatcher:web::addressFieldText(URL1.spec())]
|
| - assertWithMatcher:grey_notNil()];
|
| - [[EarlGrey selectElementWithMatcher:web::webViewContainingText(response1)]
|
| - assertWithMatcher:grey_notNil()];
|
| -
|
| - web::shell_test_util::LoadUrl(URL2);
|
| - [[EarlGrey selectElementWithMatcher:web::addressFieldText(URL2.spec())]
|
| - assertWithMatcher:grey_notNil()];
|
| - [[EarlGrey selectElementWithMatcher:web::webViewContainingText(response2)]
|
| - assertWithMatcher:grey_notNil()];
|
| -
|
| - [[EarlGrey selectElementWithMatcher:web::backButton()]
|
| - performAction:grey_tap()];
|
| - [[EarlGrey selectElementWithMatcher:web::addressFieldText(URL1.spec())]
|
| - assertWithMatcher:grey_notNil()];
|
| - [[EarlGrey selectElementWithMatcher:web::webViewContainingText(response1)]
|
| - assertWithMatcher:grey_notNil()];
|
| -
|
| - [[EarlGrey selectElementWithMatcher:web::forwardButton()]
|
| - performAction:grey_tap()];
|
| - [[EarlGrey selectElementWithMatcher:web::addressFieldText(URL2.spec())]
|
| - assertWithMatcher:grey_notNil()];
|
| - [[EarlGrey selectElementWithMatcher:web::webViewContainingText(response2)]
|
| - assertWithMatcher:grey_notNil()];
|
| -}
|
| -
|
| -// Tests back and forward navigation where a fragment link is tapped.
|
| -- (void)testNavigationBackAndForwardAfterFragmentLink {
|
| - // Create map of canned responses and set up the test HTML server.
|
| - std::map<GURL, std::string> responses;
|
| - const GURL URL1 = web::test::HttpServer::MakeUrl("http://fragmentLink");
|
| - const std::string response = "<a href='#hash' id='link'>link</a>";
|
| - responses[URL1] = response;
|
| -
|
| - const GURL URL2 = web::test::HttpServer::MakeUrl("http://fragmentLink/#hash");
|
| -
|
| - web::test::SetUpSimpleHttpServer(responses);
|
| -
|
| - web::shell_test_util::LoadUrl(URL1);
|
| - [[EarlGrey selectElementWithMatcher:web::addressFieldText(URL1.spec())]
|
| - assertWithMatcher:grey_notNil()];
|
| -
|
| - web::shell_test_util::TapWebViewElementWithId("link");
|
| - [[EarlGrey selectElementWithMatcher:web::addressFieldText(URL2.spec())]
|
| - assertWithMatcher:grey_notNil()];
|
| -
|
| - [[EarlGrey selectElementWithMatcher:web::backButton()]
|
| - performAction:grey_tap()];
|
| - [[EarlGrey selectElementWithMatcher:web::addressFieldText(URL1.spec())]
|
| - assertWithMatcher:grey_notNil()];
|
| -
|
| - [[EarlGrey selectElementWithMatcher:web::forwardButton()]
|
| - performAction:grey_tap()];
|
| - [[EarlGrey selectElementWithMatcher:web::addressFieldText(URL2.spec())]
|
| - assertWithMatcher:grey_notNil()];
|
| -}
|
| -
|
| -// Tests tapping a link with onclick="event.preventDefault()" and verifies that
|
| -// the URL didn't change..
|
| -- (void)testNavigationLinkPreventDefaultOverridesHref {
|
| - // Create map of canned responses and set up the test HTML server.
|
| - std::map<GURL, std::string> responses;
|
| - const GURL URL = web::test::HttpServer::MakeUrl("http://overridesHrefLink");
|
| - const char pageHTML[] =
|
| - "<script>"
|
| - " function printMsg() {"
|
| - " document.body.appendChild(document.createTextNode('Default "
|
| - "prevented!'));"
|
| - " }"
|
| - "</script>"
|
| - "<a href='#hash' id='overrides-href' onclick='event.preventDefault(); "
|
| - "printMsg();'>redirectLink</a>";
|
| - responses[URL] = pageHTML;
|
| -
|
| - web::test::SetUpSimpleHttpServer(responses);
|
| -
|
| - web::shell_test_util::LoadUrl(URL);
|
| - [[EarlGrey selectElementWithMatcher:web::addressFieldText(URL.spec())]
|
| - assertWithMatcher:grey_notNil()];
|
| -
|
| - web::shell_test_util::TapWebViewElementWithId("overrides-href");
|
| -
|
| - [[EarlGrey selectElementWithMatcher:web::addressFieldText(URL.spec())]
|
| - assertWithMatcher:grey_notNil()];
|
| - [[EarlGrey
|
| - selectElementWithMatcher:web::webViewContainingText("Default prevented!")]
|
| - assertWithMatcher:grey_notNil()];
|
| -}
|
| -
|
| -// Tests tapping on a link with unsupported URL scheme.
|
| -- (void)testNavigationUnsupportedSchema {
|
| - // Create map of canned responses and set up the test HTML server.
|
| - std::map<GURL, std::string> responses;
|
| - const GURL URL =
|
| - web::test::HttpServer::MakeUrl("http://urlWithUnsupportedSchemeLink");
|
| - const char pageHTML[] =
|
| - "<script>"
|
| - " function printMsg() {"
|
| - " document.body.appendChild(document.createTextNode("
|
| - " 'No navigation!'));"
|
| - " }"
|
| - "</script>"
|
| - "<a href='aaa://unsupported' id='link' "
|
| - "onclick='printMsg();'>unsupportedScheme</a>";
|
| - responses[URL] = pageHTML;
|
| -
|
| - web::test::SetUpSimpleHttpServer(responses);
|
| -
|
| - web::shell_test_util::LoadUrl(URL);
|
| - [[EarlGrey selectElementWithMatcher:web::addressFieldText(URL.spec())]
|
| - assertWithMatcher:grey_notNil()];
|
| -
|
| - web::shell_test_util::TapWebViewElementWithId("link");
|
| -
|
| - [[EarlGrey selectElementWithMatcher:web::addressFieldText(URL.spec())]
|
| - assertWithMatcher:grey_notNil()];
|
| - [[EarlGrey
|
| - selectElementWithMatcher:web::webViewContainingText("No navigation!")]
|
| - assertWithMatcher:grey_notNil()];
|
| -}
|
| -
|
| -@end
|
|
|