forked from BlocksKit/BlocksKit
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathUIImagePickerControllerBlocksKitTest.m
More file actions
64 lines (49 loc) · 2 KB
/
Copy pathUIImagePickerControllerBlocksKitTest.m
File metadata and controls
64 lines (49 loc) · 2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
//
// UIImagePickerControllerBlocksKitTest.m
// BlocksKit Unit Tests
//
#import <XCTest/XCTest.h>
#import <UIKit/UIKit.h>
#import <BlocksKit/A2DynamicDelegate.h>
#import <BlocksKit/BlocksKit.h>
#import <BlocksKit/BlocksKit+UIKit.h>
@interface UIImagePickerControllerBlocksKitTest : XCTestCase <UIImagePickerControllerDelegate, UINavigationControllerDelegate>
- (void)testDidFinishPickingMediaBlock;
- (void)testDidCancelBlock;
@end
@implementation UIImagePickerControllerBlocksKitTest {
UIImagePickerController *_subject;
BOOL delegateWorked;
}
- (void)setUp {
_subject = [UIImagePickerController new];
}
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
delegateWorked = YES;
}
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {
delegateWorked = YES;
}
- (void)testDidFinishPickingMediaBlock {
delegateWorked = NO;
__block BOOL blockWorked = NO;
_subject.delegate = self;
_subject.bk_didFinishPickingMediaBlock = ^(UIImagePickerController *picker, NSDictionary *info) {
blockWorked = YES;
};
[[_subject bk_dynamicDelegateForProtocol:@protocol(UIImagePickerControllerDelegate)] imagePickerController:_subject didFinishPickingMediaWithInfo:nil];
XCTAssertTrue(delegateWorked, @"Delegate method 'imagePickerController:didFinishPickingMediaWithInfo:' not called.");
XCTAssertTrue(blockWorked, @"Block handler 'bk_didFinishPickingMediaBlock' not called.");
}
- (void)testDidCancelBlock {
delegateWorked = NO;
__block BOOL blockWorked = NO;
_subject.delegate = self;
_subject.bk_didCancelBlock = ^(UIImagePickerController *picker) {
blockWorked = YES;
};
[[_subject bk_dynamicDelegateForProtocol:@protocol(UIImagePickerControllerDelegate)] imagePickerControllerDidCancel:_subject];
XCTAssertTrue(delegateWorked, @"Delegate method 'imagePickerControllerDidCancel:' not called.");
XCTAssertTrue(blockWorked, @"Block handler 'bk_didCancelBlock' not called.");
}
@end