/
CDRSpec.h
70 lines (54 loc) · 1.83 KB
/
CDRSpec.h
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
65
66
67
68
69
70
#import <Foundation/Foundation.h>
#import "CDRExampleBase.h"
@protocol CDRExampleReporter;
@class CDRExampleGroup, CDRExample, SpecHelper, CDRSymbolicator;
@protocol CDRSpec
@end
extern const CDRSpecBlock PENDING;
#ifdef __cplusplus
extern "C" {
#endif
void beforeEach(CDRSpecBlock);
void afterEach(CDRSpecBlock);
CDRExampleGroup * describe(NSString *, CDRSpecBlock);
extern CDRExampleGroup* (*context)(NSString *, CDRSpecBlock);
CDRExample * it(NSString *, CDRSpecBlock);
CDRExampleGroup * xdescribe(NSString *, CDRSpecBlock);
extern CDRExampleGroup* (*xcontext)(NSString *, CDRSpecBlock);
CDRExample * xit(NSString *, CDRSpecBlock);
CDRExampleGroup * fdescribe(NSString *, CDRSpecBlock);
extern CDRExampleGroup* (*fcontext)(NSString *, CDRSpecBlock);
CDRExample * fit(NSString *, CDRSpecBlock);
void fail(NSString *);
#ifdef __cplusplus
}
#import "ActualValue.h"
#import "ShouldSyntax.h"
#import "CedarComparators.h"
#import "CedarMatchers.h"
#import "CedarDoubles.h"
#endif // __cplusplus
@interface CDRSpec : NSObject <CDRSpec> {
CDRExampleGroup *rootGroup_;
CDRExampleGroup *currentGroup_;
NSString *fileName_;
CDRSymbolicator *symbolicator_;
}
@property (nonatomic, retain) CDRExampleGroup *currentGroup, *rootGroup;
@property (nonatomic, retain) NSString *fileName;
@property (nonatomic, retain) CDRSymbolicator *symbolicator;
- (void)defineBehaviors;
- (void)markAsFocusedClosestToLineNumber:(NSUInteger)lineNumber;
@end
@interface CDRSpec (SpecDeclaration)
- (void)declareBehaviors;
@end
#define SPEC_BEGIN(name) \
@interface name : CDRSpec \
@end \
@implementation name \
- (void)declareBehaviors { \
self.fileName = [NSString stringWithUTF8String:__FILE__];
#define SPEC_END \
} \
@end