import testsuite

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32187 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Richard Frith-MacDonald 2011-02-16 08:21:17 +00:00
parent 734c214892
commit 0e02133729
374 changed files with 20864 additions and 0 deletions

View file

@ -0,0 +1,19 @@
#import "Testing.h"
#import "ObjectTesting.h"
#import <Foundation/NSAutoreleasePool.h>
#import <Foundation/NSCharacterSet.h>
int main()
{
NSAutoreleasePool *arp = [NSAutoreleasePool new];
id testObj = [NSCharacterSet alphanumericCharacterSet];
test_alloc(@"NSCharacterSet");
test_NSObject(@"NSCharacterSet", [NSArray arrayWithObject:testObj]);
test_NSCoding([NSArray arrayWithObject:testObj]);
test_NSCopying(@"NSCharacterSet", @"NSMutableCharacterSet", [NSArray arrayWithObject:testObj], NO, NO);
test_NSMutableCopying(@"NSCharacterSet",@"NSMutableCharacterSet", [NSArray arrayWithObject:testObj]);
[arp release]; arp = nil;
return 0;
}

View file

@ -0,0 +1,67 @@
#import "Testing.h"
#import <Foundation/NSAutoreleasePool.h>
#import <Foundation/NSCharacterSet.h>
int main()
{
NSAutoreleasePool *arp = [NSAutoreleasePool new];
NSCharacterSet *theSet = nil;
theSet = [NSCharacterSet alphanumericCharacterSet];
PASS(theSet != nil, "NSCharacterSet understands [+alphanumericCharacterSet]");
PASS([NSCharacterSet alphanumericCharacterSet] == theSet,
"NSCharacterSet uniques alphanumericCharacterSet");
theSet = [NSCharacterSet controlCharacterSet];
PASS(theSet != nil,"NSCharacterSet understands [+controlCharacterSet]");
PASS([NSCharacterSet controlCharacterSet] == theSet,
"NSCharacterSet uniques controlCharacterSet");
theSet = [NSCharacterSet decimalDigitCharacterSet];
PASS(theSet != nil,"NSCharacterSet understands [+decimalDigitCharacterSet]");
PASS([NSCharacterSet decimalDigitCharacterSet] == theSet,
"NSCharacterSet uniques [+decimalDigitCharacterSet]");
theSet = [NSCharacterSet illegalCharacterSet];
PASS(theSet != nil,"NSCharacterSet understands [+illegalCharacterSet]");
PASS([NSCharacterSet illegalCharacterSet] == theSet,
"NSCharacterSet uniques [+illegalCharacterSet]");
theSet = [NSCharacterSet letterCharacterSet];
PASS(theSet != nil,"NSCharacterSet understands [+letterCharacterSet]");
PASS([NSCharacterSet letterCharacterSet] == theSet,
"NSCharacterSet uniques [+letterCharacterSet]");
theSet = [NSCharacterSet lowercaseLetterCharacterSet];
PASS(theSet != nil,"NSCharacterSet understands [+lowercaseLetterCharacterSet]");
PASS([NSCharacterSet lowercaseLetterCharacterSet] == theSet,
"NSCharacterSet uniques [+lowercaseLetterCharacterSet]");
theSet = [NSCharacterSet nonBaseCharacterSet];
PASS(theSet != nil,"NSCharacterSet understands [+nonBaseCharacterSet]");
PASS([NSCharacterSet nonBaseCharacterSet] == theSet,
"NSCharacterSet uniques [+nonBaseCharacterSet]");
theSet = [NSCharacterSet punctuationCharacterSet];
PASS(theSet != nil,"NSCharacterSet understands [+punctuationCharacterSet]");
PASS([NSCharacterSet punctuationCharacterSet] == theSet,
"NSCharacterSet uniques [+punctuationCharacterSet]");
theSet = [NSCharacterSet uppercaseLetterCharacterSet];
PASS(theSet != nil,"NSCharacterSet understands [+uppercaseLetterCharacterSet]");
PASS([NSCharacterSet uppercaseLetterCharacterSet] == theSet,
"NSCharacterSet uniques [+uppercaseLetterCharacterSet]");
theSet = [NSCharacterSet whitespaceAndNewlineCharacterSet];
PASS(theSet != nil,"NSCharacterSet understands [+whitespaceAndNewlineCharacterSet]");
PASS([NSCharacterSet whitespaceAndNewlineCharacterSet] == theSet,
"NSCharacterSet uniques [+whitespaceAndNewlineCharacterSet]");
theSet = [NSCharacterSet whitespaceCharacterSet];
PASS(theSet != nil,"NSCharacterSet understands [+whitespaceCharacterSet]");
PASS([NSCharacterSet whitespaceCharacterSet] == theSet,
"NSCharacterSet uniques [+whitespaceCharacterSet]");
[arp release]; arp = nil;
return 0;
}

View file

@ -0,0 +1,93 @@
#import "Testing.h"
#import <Foundation/NSAutoreleasePool.h>
#import <Foundation/NSCharacterSet.h>
#import <Foundation/NSData.h>
int main()
{
NSAutoreleasePool *arp = [NSAutoreleasePool new];
NSCharacterSet *theSet,*iSet;
NSData *data1 = nil;
theSet = [NSCharacterSet alphanumericCharacterSet];
PASS([theSet characterIsMember:'A'] &&
[theSet characterIsMember:'Z'] &&
[theSet characterIsMember:'a'] &&
[theSet characterIsMember:'z'] &&
[theSet characterIsMember:'9'] &&
[theSet characterIsMember:'0'] &&
![theSet characterIsMember:'#'] &&
![theSet characterIsMember:' '] &&
![theSet characterIsMember:'\n'],
"Check some characters from alphanumericCharacterSet");
theSet = [NSCharacterSet lowercaseLetterCharacterSet];
PASS(![theSet characterIsMember:'A'] &&
![theSet characterIsMember:'Z'] &&
[theSet characterIsMember:'a'] &&
[theSet characterIsMember:'z'] &&
![theSet characterIsMember:'9'] &&
![theSet characterIsMember:'0'] &&
![theSet characterIsMember:'#'] &&
![theSet characterIsMember:' '] &&
![theSet characterIsMember:'\n'],
"Check some characters from lowercaseLetterCharacterSet");
theSet = [NSCharacterSet whitespaceAndNewlineCharacterSet];
PASS(![theSet characterIsMember:'A'] &&
![theSet characterIsMember:'Z'] &&
![theSet characterIsMember:'a'] &&
![theSet characterIsMember:'z'] &&
![theSet characterIsMember:'9'] &&
![theSet characterIsMember:'0'] &&
![theSet characterIsMember:'#'] &&
[theSet characterIsMember:' '] &&
[theSet characterIsMember:'\n'] &&
[theSet characterIsMember:'\t'],
"Check some characters from whitespaceAndNewlineCharacterSet");
data1 = [theSet bitmapRepresentation];
PASS(data1 != nil && [data1 isKindOfClass:[NSData class]],
"-bitmapRepresentation works");
iSet = [theSet invertedSet];
PASS([iSet characterIsMember:'A'] &&
[iSet characterIsMember:'Z'] &&
[iSet characterIsMember:'a'] &&
[iSet characterIsMember:'z'] &&
[iSet characterIsMember:'9'] &&
[iSet characterIsMember:'0'] &&
[iSet characterIsMember:'#'] &&
![iSet characterIsMember:' '] &&
![iSet characterIsMember:'\n'] &&
![iSet characterIsMember:'\t'],
"-invertedSet works");
{
NSCharacterSet *firstSet,*secondSet,*thirdSet,*fourthSet;
firstSet = [NSCharacterSet decimalDigitCharacterSet];
secondSet = [NSCharacterSet decimalDigitCharacterSet];
thirdSet = nil;
fourthSet = [NSMutableCharacterSet decimalDigitCharacterSet];
thirdSet = [[firstSet class] decimalDigitCharacterSet];
PASS (firstSet == secondSet &&
firstSet == thirdSet &&
firstSet != fourthSet,
"Caching of standard sets");
}
theSet = [NSCharacterSet characterSetWithCharactersInString:@"Not a set"];
PASS(theSet != nil && [theSet isKindOfClass:[NSCharacterSet class]],
"Create custom set with characterSetWithCharactersInString:");
PASS([theSet characterIsMember:' '] &&
[theSet characterIsMember:'N'] &&
[theSet characterIsMember:'o'] &&
![theSet characterIsMember:'A'] &&
![theSet characterIsMember:'#'],
"Check custom set");
[arp release]; arp = nil;
return 0;
}

View file

@ -0,0 +1,59 @@
#import "Testing.h"
#import "ObjectTesting.h"
#import <Foundation/Foundation.h>
int
main (int argc, char**argv)
{
id pool = [NSAutoreleasePool new];
NSCharacterSet *illegal = [NSCharacterSet illegalCharacterSet];
NSCharacterSet *legal = [illegal invertedSet];
NSMutableData *data;
NSString *s;
unichar cp;
PASS([illegal characterIsMember: 0xfffe], "0xfffe is illegal");
PASS(![legal characterIsMember: 0xfffe], "0xfffe is bnot legal");
PASS([illegal characterIsMember: 0xffff], "0xffff is illegal");
PASS(![legal characterIsMember: 0xffff], "0xffff is not legal");
PASS([illegal characterIsMember: 0xfdd0], "0xfdd0 is illegal");
PASS(![legal characterIsMember: 0xfdd0], "0xfdd0 is not legal");
PASS([illegal longCharacterIsMember: 0x0010fffe], "0x0010fffe is illegal");
PASS(![legal longCharacterIsMember: 0x0010fffe], "0x0010fffe is not legal");
// Null character
PASS(![illegal characterIsMember: 0x0000], "0x0000 is not illegal");
PASS([legal characterIsMember: 0x0000], "0x0000 is legal");
// First half of surrogate pair
PASS(![illegal characterIsMember: 0xd800], "0xd800 is not illegal");
PASS([legal characterIsMember: 0xd800], "0xd800 is legal");
// Second half of surrogate pair
PASS(![illegal characterIsMember: 0xdc00], "0xdc00 is not illegal");
PASS([legal characterIsMember: 0xdc00], "0xdc00 is legal");
// Private use character in code plane 16
PASS([illegal longCharacterIsMember: 0x0010fffd], "0x0010fffd illegal");
PASS(![legal longCharacterIsMember: 0x0010fffd], "0x0010fffd is illegal");
// Entire UCS-2 set (UTF-16 surrogates start above 0xD800)
// (still looking for official information on the range of UCS-2 code points,
// i.e. whether UCS-4/UCS-2 are actually official code point sets
// or whether they are just commonly used terms to differentiate
// the full UCS code point set from it's UTF-16 encoding.)
data = [NSMutableData dataWithCapacity: sizeof(cp) * 0xD800];
// Do not start with 0x0000 otherwise a leading BOM could misinterpreted.
for (cp=0x0001;cp<0xFFFF;cp++)
{
/* Skip code points that are reserved for surrogate characters. */
if (cp == 0xD800) cp = 0xF900;
if ([legal characterIsMember:cp])
{
[data appendBytes: &cp length: sizeof(cp)];
}
}
s = [[NSString alloc] initWithData: data encoding: NSUnicodeStringEncoding];
PASS([s length],"legal UCS-2 set can be represented in an NSString.");
[s release];
[pool release];
return (0);
}