26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
@implementation TestsAppDelegate (OFSetTests)
- (void)setTests
{
OFAutoreleasePool *pool = [[OFAutoreleasePool alloc] init];
OFSet *set1, *set2;
OFMutableSet *mutableSet;
TEST(@"+[setWithArray:]",
(set1 = [OFSet setWithArray: [OFArray arrayWithObjects: @"foo",
@"bar", @"baz", @"foo", @"x", nil]]))
TEST(@"+[setWithObjects:]",
(set2 = [OFSet setWithObjects: @"foo", @"bar", @"baz", @"bar", @"x",
|
>
>
>
>
|
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
@implementation TestsAppDelegate (OFSetTests)
- (void)setTests
{
OFAutoreleasePool *pool = [[OFAutoreleasePool alloc] init];
OFSet *set1, *set2;
OFMutableSet *mutableSet;
#ifdef OF_HAVE_FAST_ENUMERATION
BOOL ok;
size_t i;
#endif
TEST(@"+[setWithArray:]",
(set1 = [OFSet setWithArray: [OFArray arrayWithObjects: @"foo",
@"bar", @"baz", @"foo", @"x", nil]]))
TEST(@"+[setWithObjects:]",
(set2 = [OFSet setWithObjects: @"foo", @"bar", @"baz", @"bar", @"x",
|
66
67
68
69
70
71
72
73
74
75
76
|
[mutableSet isSubsetOfSet: set1] &&
![set1 isSubsetOfSet: mutableSet]);
TEST(@"-[intersectsSet:]",
[(set2 = [OFSet setWithObjects: @"x", nil]) intersectsSet: set1] &&
[set1 intersectsSet: set2] &&
![([OFSet setWithObjects: @"1", nil]) intersectsSet: set1]);
[pool drain];
}
@end
|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
|
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
|
[mutableSet isSubsetOfSet: set1] &&
![set1 isSubsetOfSet: mutableSet]);
TEST(@"-[intersectsSet:]",
[(set2 = [OFSet setWithObjects: @"x", nil]) intersectsSet: set1] &&
[set1 intersectsSet: set2] &&
![([OFSet setWithObjects: @"1", nil]) intersectsSet: set1]);
#ifdef OF_HAVE_FAST_ENUMERATION
ok = YES;
i = 0;
for (OFString *s in set1) {
switch (i) {
case 0:
if (![s isEqual: @"bar"])
ok = NO;
break;
case 1:
if (![s isEqual: @"baz"])
ok = NO;
break;
case 2:
if (![s isEqual: @"foo"])
ok = NO;
break;
case 3:
if (![s isEqual: @"x"])
ok = NO;
break;
}
i++;
}
if (i != 4)
ok = NO;
TEST(@"Fast enumeration", ok)
#endif
[pool drain];
}
@end
|