mirror of
https://github.com/gnustep/libs-base.git
synced 2025-05-30 08:21:25 +00:00
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:
parent
734c214892
commit
0e02133729
374 changed files with 20864 additions and 0 deletions
22
Tests/base/NSMutableData/basic.m
Normal file
22
Tests/base/NSMutableData/basic.m
Normal file
|
@ -0,0 +1,22 @@
|
|||
#import "ObjectTesting.h"
|
||||
#import <Foundation/NSData.h>
|
||||
#import <Foundation/NSAutoreleasePool.h>
|
||||
|
||||
int main()
|
||||
{
|
||||
NSAutoreleasePool *arp = [NSAutoreleasePool new];
|
||||
id testObject = [NSMutableData new];
|
||||
test_alloc(@"NSMutableData");
|
||||
test_NSObject(@"NSData",[NSArray arrayWithObject:testObject]);
|
||||
test_NSCoding([NSArray arrayWithObject:testObject]);
|
||||
test_NSCopying(@"NSData",
|
||||
@"NSMutableData",
|
||||
[NSArray arrayWithObject:testObject], NO, NO);
|
||||
test_NSMutableCopying(@"NSData",
|
||||
@"NSMutableData",
|
||||
[NSArray arrayWithObject:testObject]);
|
||||
|
||||
[arp release]; arp = nil;
|
||||
return 0;
|
||||
}
|
||||
|
57
Tests/base/NSMutableData/general.m
Normal file
57
Tests/base/NSMutableData/general.m
Normal file
|
@ -0,0 +1,57 @@
|
|||
#import "Testing.h"
|
||||
#import "ObjectTesting.h"
|
||||
#import <Foundation/NSAutoreleasePool.h>
|
||||
#import <Foundation/NSData.h>
|
||||
#import <Foundation/NSString.h>
|
||||
|
||||
int main()
|
||||
{
|
||||
NSAutoreleasePool *arp = [NSAutoreleasePool new];
|
||||
char *str1,*str2,*tmp;
|
||||
NSData *data1, *data2;
|
||||
NSMutableData *mutable;
|
||||
unsigned char *hold;
|
||||
|
||||
str1 = "Test string for data classes";
|
||||
str2 = (char *) malloc(sizeof("insert"));
|
||||
strcpy(str2,"insert");
|
||||
|
||||
mutable = [NSMutableData dataWithLength:100];
|
||||
hold = [mutable mutableBytes];
|
||||
|
||||
/* hmpf is this correct */
|
||||
data1 = [NSData dataWithBytes:str1 length:(strlen(str1) * sizeof(void*))];
|
||||
PASS(data1 != nil &&
|
||||
[data1 isKindOfClass:[NSData class]] &&
|
||||
[data1 length] == (strlen(str1) * sizeof(void*)) &&
|
||||
[data1 bytes] != str1 &&
|
||||
strcmp(str1,[data1 bytes]) == 0,
|
||||
"+dataWithBytes:length: works");
|
||||
|
||||
mutable = [NSMutableData data];
|
||||
PASS(mutable != nil &&
|
||||
[mutable isKindOfClass:[NSMutableData class]] &&
|
||||
[mutable length] == 0,
|
||||
"+data creates empty mutable data");
|
||||
|
||||
[mutable setData:data1];
|
||||
PASS(mutable != nil &&
|
||||
[mutable length] == (strlen(str1) * sizeof(void*)),
|
||||
"-setData: works");
|
||||
|
||||
[mutable replaceBytesInRange:NSMakeRange(22,6) withBytes:str2];
|
||||
tmp = (char *)malloc([mutable length]);
|
||||
[mutable getBytes:tmp range:NSMakeRange(22,6)];
|
||||
tmp[6] = '\0';
|
||||
PASS(mutable != nil &&
|
||||
strcmp(tmp,str2) == 0,
|
||||
"-replaceBytesInRange:withBytes suceeds");
|
||||
free(tmp);
|
||||
TEST_EXCEPTION([mutable replaceBytesInRange:NSMakeRange([mutable length]+1,6)
|
||||
withBytes:str2];,
|
||||
NSRangeException,YES,"-replaceBytesInRange:withBytes out of range raises exception");
|
||||
|
||||
|
||||
[arp release]; arp = nil;
|
||||
return 0;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue