| Index: ios/chrome/browser/ui/browser_view_controller_unittest.mm
|
| diff --git a/ios/chrome/browser/ui/browser_view_controller_unittest.mm b/ios/chrome/browser/ui/browser_view_controller_unittest.mm
|
| index d31d8ee75a3f4bd1ea02fdc9ffc5338ac783c37e..2822da9cfa60d1ba9061808cd8fa99a08179f59b 100644
|
| --- a/ios/chrome/browser/ui/browser_view_controller_unittest.mm
|
| +++ b/ios/chrome/browser/ui/browser_view_controller_unittest.mm
|
| @@ -66,6 +66,7 @@
|
| #include "third_party/ocmock/gtest_support.h"
|
| #include "ui/base/l10n/l10n_util.h"
|
| #include "ui/base/l10n/l10n_util_mac.h"
|
| +#include "ui/base/test/ios/ui_image_test_utils.h"
|
|
|
| using web::NavigationManagerImpl;
|
| using web::WebStateImpl;
|
| @@ -406,18 +407,36 @@ TEST_F(BrowserViewControllerTest, TestSharePageCommandHandling) {
|
| NSString* expectedTitle = @"title";
|
| [(BVCTestTabMock*)tab_.get() setUrl:expectedUrl];
|
| OCMockObject* tabMock = (OCMockObject*)tab_.get();
|
| + ios::ChromeBrowserState* ptr = chrome_browser_state_.get();
|
| + [[[tabMock stub] andReturnValue:OCMOCK_VALUE(ptr)] browserState];
|
| [[[tabMock stub] andReturn:expectedTitle] title];
|
| [[[tabMock stub] andReturn:expectedTitle] originalTitle];
|
| - base::scoped_nsobject<ShareToData> expectedShareData([[ShareToData alloc]
|
| - initWithURL:expectedUrl
|
| - title:expectedTitle
|
| - isOriginalTitle:YES
|
| - isPagePrintable:YES]);
|
| +
|
| + UIImage* tabSnapshot = ui::test::uiimage_utils::UIImageWithSizeAndSolidColor(
|
| + CGSizeMake(300, 400), [UIColor blueColor]);
|
| + [[[tabMock stub] andReturn:tabSnapshot] generateSnapshotWithOverlay:NO
|
| + visibleFrameOnly:YES];
|
| OCMockObject* shareControllerMock = (OCMockObject*)shareController_.get();
|
| // Passing non zero/nil |fromRect| and |inView| parameters to satisfy protocol
|
| // requirements.
|
| + BOOL (^shareDataChecker)
|
| + (id value) = ^BOOL(id value) {
|
| + if (![value isMemberOfClass:ShareToData.class])
|
| + return NO;
|
| + ShareToData* shareToData = (ShareToData*)value;
|
| + CGSize size = CGSizeMake(40, 40);
|
| + BOOL thumbnailDataIsEqual = ui::test::uiimage_utils::UIImagesAreEqual(
|
| + shareToData.thumbnailGenerator(size),
|
| + ui::test::uiimage_utils::UIImageWithSizeAndSolidColor(
|
| + size, [UIColor blueColor]));
|
| + return shareToData.url == expectedUrl &&
|
| + [shareToData.title isEqual:expectedTitle] &&
|
| + shareToData.isOriginalTitle == YES &&
|
| + shareToData.isPagePrintable == NO && thumbnailDataIsEqual;
|
| + };
|
| +
|
| [[shareControllerMock expect]
|
| - shareWithData:expectedShareData
|
| + shareWithData:[OCMArg checkWithBlock:shareDataChecker]
|
| controller:bvc_
|
| browserState:chrome_browser_state_.get()
|
| shareToDelegate:bvc_
|
|
|