OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 "chrome/browser/ui/cocoa/download/download_shelf_controller.h" |
| 6 |
5 #import <Cocoa/Cocoa.h> | 7 #import <Cocoa/Cocoa.h> |
6 | 8 |
| 9 #include <utility> |
| 10 |
7 #import "base/mac/scoped_block.h" | 11 #import "base/mac/scoped_block.h" |
8 #import "base/mac/scoped_nsobject.h" | 12 #import "base/mac/scoped_nsobject.h" |
9 #include "base/memory/scoped_ptr.h" | 13 #include "base/memory/scoped_ptr.h" |
10 #include "chrome/browser/download/download_shelf.h" | 14 #include "chrome/browser/download/download_shelf.h" |
11 #include "chrome/browser/ui/cocoa/cocoa_profile_test.h" | 15 #include "chrome/browser/ui/cocoa/cocoa_profile_test.h" |
12 #import "chrome/browser/ui/cocoa/download/download_item_controller.h" | 16 #import "chrome/browser/ui/cocoa/download/download_item_controller.h" |
13 #import "chrome/browser/ui/cocoa/download/download_shelf_controller.h" | |
14 #import "chrome/browser/ui/cocoa/view_resizer_pong.h" | 17 #import "chrome/browser/ui/cocoa/view_resizer_pong.h" |
15 #include "content/public/test/mock_download_item.h" | 18 #include "content/public/test/mock_download_item.h" |
16 #include "testing/gtest/include/gtest/gtest.h" | 19 #include "testing/gtest/include/gtest/gtest.h" |
17 #include "testing/platform_test.h" | 20 #include "testing/platform_test.h" |
18 #import "third_party/ocmock/OCMock/OCMock.h" | 21 #import "third_party/ocmock/OCMock/OCMock.h" |
19 #import "third_party/ocmock/gtest_support.h" | 22 #import "third_party/ocmock/gtest_support.h" |
20 #import "ui/events/test/cocoa_test_event_utils.h" | 23 #import "ui/events/test/cocoa_test_event_utils.h" |
21 | 24 |
22 using ::testing::Return; | 25 using ::testing::Return; |
23 using ::testing::AnyNumber; | 26 using ::testing::AnyNumber; |
24 | 27 |
25 // Wraps a content::MockDownloadItem so it can be retained by the mock | 28 // Wraps a content::MockDownloadItem so it can be retained by the mock |
26 // DownloadItemController. | 29 // DownloadItemController. |
27 @interface WrappedMockDownloadItem : NSObject { | 30 @interface WrappedMockDownloadItem : NSObject { |
28 @private | 31 @private |
29 scoped_ptr<content::MockDownloadItem> download_; | 32 scoped_ptr<content::MockDownloadItem> download_; |
30 } | 33 } |
31 - (id)initWithMockDownload:(scoped_ptr<content::MockDownloadItem>)download; | 34 - (id)initWithMockDownload:(scoped_ptr<content::MockDownloadItem>)download; |
32 - (content::DownloadItem*)download; | 35 - (content::DownloadItem*)download; |
33 - (content::MockDownloadItem*)mockDownload; | 36 - (content::MockDownloadItem*)mockDownload; |
34 @end | 37 @end |
35 | 38 |
36 @implementation WrappedMockDownloadItem | 39 @implementation WrappedMockDownloadItem |
37 - (id)initWithMockDownload:(scoped_ptr<content::MockDownloadItem>)download { | 40 - (id)initWithMockDownload:(scoped_ptr<content::MockDownloadItem>)download { |
38 if ((self = [super init])) { | 41 if ((self = [super init])) { |
39 download_ = download.Pass(); | 42 download_ = std::move(download); |
40 } | 43 } |
41 return self; | 44 return self; |
42 } | 45 } |
43 | 46 |
44 - (content::DownloadItem*)download { | 47 - (content::DownloadItem*)download { |
45 return download_.get(); | 48 return download_.get(); |
46 } | 49 } |
47 | 50 |
48 - (content::MockDownloadItem*)mockDownload { | 51 - (content::MockDownloadItem*)mockDownload { |
49 return download_.get(); | 52 return download_.get(); |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
136 | 139 |
137 id DownloadShelfControllerTest::CreateItemController() { | 140 id DownloadShelfControllerTest::CreateItemController() { |
138 scoped_ptr<content::MockDownloadItem> download( | 141 scoped_ptr<content::MockDownloadItem> download( |
139 new ::testing::NiceMock<content::MockDownloadItem>); | 142 new ::testing::NiceMock<content::MockDownloadItem>); |
140 ON_CALL(*download.get(), GetOpened()) | 143 ON_CALL(*download.get(), GetOpened()) |
141 .WillByDefault(Return(false)); | 144 .WillByDefault(Return(false)); |
142 ON_CALL(*download.get(), GetState()) | 145 ON_CALL(*download.get(), GetState()) |
143 .WillByDefault(Return(content::DownloadItem::IN_PROGRESS)); | 146 .WillByDefault(Return(content::DownloadItem::IN_PROGRESS)); |
144 | 147 |
145 base::scoped_nsobject<WrappedMockDownloadItem> wrappedMockDownload( | 148 base::scoped_nsobject<WrappedMockDownloadItem> wrappedMockDownload( |
146 [[WrappedMockDownloadItem alloc] initWithMockDownload:download.Pass()]); | 149 [[WrappedMockDownloadItem alloc] |
| 150 initWithMockDownload:std::move(download)]); |
147 | 151 |
148 id item_controller = | 152 id item_controller = |
149 [OCMockObject mockForClass:[DownloadItemController class]]; | 153 [OCMockObject mockForClass:[DownloadItemController class]]; |
150 base::scoped_nsobject<NSView> view([[NSView alloc] initWithFrame:NSZeroRect]); | 154 base::scoped_nsobject<NSView> view([[NSView alloc] initWithFrame:NSZeroRect]); |
151 [[[item_controller stub] andCall:@selector(download) | 155 [[[item_controller stub] andCall:@selector(download) |
152 onObject:wrappedMockDownload.get()] download]; | 156 onObject:wrappedMockDownload.get()] download]; |
153 [[item_controller stub] updateVisibility:[OCMArg any]]; | 157 [[item_controller stub] updateVisibility:[OCMArg any]]; |
154 [[[item_controller stub] | 158 [[[item_controller stub] |
155 andReturnValue:[NSValue valueWithSize:NSMakeSize(10,10)]] preferredSize]; | 159 andReturnValue:[NSValue valueWithSize:NSMakeSize(10,10)]] preferredSize]; |
156 [[[item_controller stub] andReturn:view.get()] view]; | 160 [[[item_controller stub] andReturn:view.get()] view]; |
(...skipping 234 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
391 }]; | 395 }]; |
392 [shelf_ showDownloadShelf:NO isUserAction:NO]; | 396 [shelf_ showDownloadShelf:NO isUserAction:NO]; |
393 base::MessageLoop::current()->Run(); | 397 base::MessageLoop::current()->Run(); |
394 EXPECT_TRUE([[shelf_ view] isHidden]); | 398 EXPECT_TRUE([[shelf_ view] isHidden]); |
395 | 399 |
396 [shelf_ showDownloadShelf:YES isUserAction:NO]; | 400 [shelf_ showDownloadShelf:YES isUserAction:NO]; |
397 EXPECT_FALSE([[shelf_ view] isHidden]); | 401 EXPECT_FALSE([[shelf_ view] isHidden]); |
398 } | 402 } |
399 | 403 |
400 } // namespace | 404 } // namespace |
OLD | NEW |