| Index: ios/chrome/browser/autofill/form_suggestion_controller_unittest.mm
|
| diff --git a/ios/chrome/browser/autofill/form_suggestion_controller_unittest.mm b/ios/chrome/browser/autofill/form_suggestion_controller_unittest.mm
|
| index 2bbd34cebb1a77af2fe33f3aefd2a59ef0dea6ae..0f9e99e9aa688af14eb192f94e7310d691ddad40 100644
|
| --- a/ios/chrome/browser/autofill/form_suggestion_controller_unittest.mm
|
| +++ b/ios/chrome/browser/autofill/form_suggestion_controller_unittest.mm
|
| @@ -9,15 +9,17 @@
|
|
|
| #include "base/ios/ios_util.h"
|
| #include "base/mac/foundation_util.h"
|
| +#include "base/path_service.h"
|
| +#include "base/strings/stringprintf.h"
|
| #import "components/autofill/ios/browser/form_suggestion.h"
|
| #import "ios/chrome/browser/autofill/form_input_accessory_view_controller.h"
|
| #import "ios/chrome/browser/autofill/form_suggestion_provider.h"
|
| #import "ios/chrome/browser/autofill/form_suggestion_view.h"
|
| #include "ios/chrome/browser/ui/ui_util.h"
|
| #import "ios/chrome/browser/web/chrome_web_test.h"
|
| -#include "ios/chrome/test/base/scoped_block_swizzler.h"
|
| +#import "ios/web/public/navigation_manager.h"
|
| #import "ios/web/public/web_state/ui/crw_web_view_proxy.h"
|
| -#import "ios/web/web_state/ui/crw_web_controller.h"
|
| +#import "ios/web/public/web_state/web_state.h"
|
| #import "testing/gtest_mac.h"
|
| #import "third_party/ocmock/OCMock/OCMock.h"
|
| #include "third_party/ocmock/gtest_support.h"
|
| @@ -161,16 +163,6 @@ class FormSuggestionControllerTest : public ChromeWebTest {
|
| LoadHtml(@"<html></html>", GURL(url));
|
| }
|
|
|
| - // Swizzles the current web controller to set whether the content is HTML.
|
| - void SetContentIsHtml(BOOL content_is_html) {
|
| - id content_is_html_block = ^BOOL(CRWWebController* webController) {
|
| - return content_is_html;
|
| - };
|
| - content_is_html_swizzler_.reset(new ScopedBlockSwizzler(
|
| - [CRWWebController class], @selector(contentIsHTML),
|
| - content_is_html_block));
|
| - }
|
| -
|
| protected:
|
| // Sets up |suggestion_controller_| with the specified array of
|
| // FormSuggestionProviders.
|
| @@ -227,9 +219,6 @@ class FormSuggestionControllerTest : public ChromeWebTest {
|
| }
|
| }
|
|
|
| - // Swizzler for [CRWWebController contentIsHTML].
|
| - std::unique_ptr<ScopedBlockSwizzler> content_is_html_swizzler_;
|
| -
|
| // The FormSuggestionController under test.
|
| FormSuggestionController* suggestion_controller_;
|
|
|
| @@ -261,10 +250,22 @@ TEST_F(FormSuggestionControllerTest, PageLoadShouldBeIgnoredWhenNotWebScheme) {
|
| // Tests that pages whose content isn't HTML aren't processed.
|
| TEST_F(FormSuggestionControllerTest, PageLoadShouldBeIgnoredWhenNotHtml) {
|
| SetUpController(@[]);
|
| - SetCurrentUrl("http://foo.com");
|
| - SetContentIsHtml(NO);
|
| - [suggestion_controller_ webState:web_state() didLoadPageWithSuccess:YES];
|
|
|
| + // Construct file:// URL for a PDF file.
|
| + base::FilePath path;
|
| + base::PathService::Get(base::DIR_MODULE, &path);
|
| + const char kPdfFilePath[] = "ios/testing/data/http_server_files/testpage.pdf";
|
| + path = path.Append(FILE_PATH_LITERAL(kPdfFilePath));
|
| + GURL url(base::StringPrintf("file://%s", path.value().c_str()));
|
| +
|
| + // Load PDF file URL.
|
| + web::NavigationManager::WebLoadParams params(url);
|
| + web_state()->GetNavigationManager()->LoadURLWithParams(params);
|
| + WaitForCondition(^{
|
| + return !web_state()->IsLoading();
|
| + });
|
| +
|
| + ASSERT_EQ("application/pdf", web_state()->GetContentsMimeType());
|
| EXPECT_FALSE(GetSuggestionView(input_accessory_view_));
|
| EXPECT_OCMOCK_VERIFY(mock_js_suggestion_manager_);
|
| }
|
|
|