mirror of
https://github.com/gnustep/libs-base.git
synced 2025-05-31 00:30:53 +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
14
Tests/base/NSUserDefaults/basic.m
Normal file
14
Tests/base/NSUserDefaults/basic.m
Normal file
|
@ -0,0 +1,14 @@
|
|||
#import "ObjectTesting.h"
|
||||
#import <Foundation/NSAutoreleasePool.h>
|
||||
#import <Foundation/NSUserDefaults.h>
|
||||
|
||||
int main()
|
||||
{
|
||||
NSAutoreleasePool *arp = [NSAutoreleasePool new];
|
||||
NSArray *testObj = [NSUserDefaults new];
|
||||
|
||||
test_NSObject(@"NSUserDefaults", [NSArray arrayWithObject:testObj]);
|
||||
|
||||
[arp release]; arp = nil;
|
||||
return 0;
|
||||
}
|
77
Tests/base/NSUserDefaults/general.m
Normal file
77
Tests/base/NSUserDefaults/general.m
Normal file
|
@ -0,0 +1,77 @@
|
|||
#import <Foundation/NSAutoreleasePool.h>
|
||||
#import <Foundation/NSNotification.h>
|
||||
#import <Foundation/NSUserDefaults.h>
|
||||
#import "ObjectTesting.h"
|
||||
|
||||
@interface Observer : NSObject
|
||||
{
|
||||
unsigned count;
|
||||
}
|
||||
- (NSString*) count;
|
||||
- (void) notified: (NSNotification*)n;
|
||||
@end
|
||||
|
||||
@implementation Observer
|
||||
- (NSString*) count
|
||||
{
|
||||
return [NSString stringWithFormat: @"%u", count];
|
||||
}
|
||||
- (void) notified: (NSNotification*)n
|
||||
{
|
||||
count++;
|
||||
}
|
||||
@end
|
||||
|
||||
int main()
|
||||
{
|
||||
NSAutoreleasePool *arp = [NSAutoreleasePool new];
|
||||
Observer *obs = [[Observer new] autorelease];
|
||||
NSUserDefaults *defs;
|
||||
|
||||
defs = [NSUserDefaults standardUserDefaults];
|
||||
PASS(defs != nil && [defs isKindOfClass: [NSUserDefaults class]],
|
||||
"NSUserDefaults understands +standardUserDefaults");
|
||||
|
||||
#if defined(GNUSTEP_BASE_LIBRARY)
|
||||
{
|
||||
id lang;
|
||||
|
||||
lang = [NSUserDefaults userLanguages];
|
||||
PASS(lang != nil && [lang isKindOfClass: [NSArray class]],
|
||||
"NSUserDefaults understands +userLanguages");
|
||||
|
||||
[NSUserDefaults setUserLanguages:
|
||||
[NSArray arrayWithObject: @"Bogus language"]];
|
||||
PASS([lang isEqual: [NSUserDefaults userLanguages]] == NO,
|
||||
"NSUserDefaults understands +setUserLanguages");
|
||||
|
||||
[NSUserDefaults setUserLanguages: lang];
|
||||
PASS([lang isEqual: [NSUserDefaults userLanguages]],
|
||||
"NSUserDefaults can set user languages");
|
||||
}
|
||||
#endif
|
||||
|
||||
[[NSNotificationCenter defaultCenter] addObserver: obs
|
||||
selector: @selector(notified:)
|
||||
name: NSUserDefaultsDidChangeNotification
|
||||
object: nil];
|
||||
|
||||
[defs setBool: YES forKey: @"Test Suite Bool"];
|
||||
PASS([defs boolForKey: @"Test Suite Bool"],
|
||||
"NSUserDefaults can set/get a BOOL");
|
||||
|
||||
PASS_EQUAL([obs count], @"1", "setting a boolean causes notification");
|
||||
|
||||
[defs setInteger: 34 forKey: @"Test Suite Int"];
|
||||
PASS([defs integerForKey: @"Test Suite Int"] == 34,
|
||||
"NSUserDefaults can set/get an int");
|
||||
|
||||
PASS_EQUAL([obs count], @"2", "setting an integer causes notification");
|
||||
|
||||
[defs setObject: @"SetString" forKey: @"Test Suite Str"];
|
||||
PASS([[defs stringForKey: @"Test Suite Str"] isEqual: @"SetString"],
|
||||
"NSUserDefaults can set/get a string");
|
||||
|
||||
[arp release]; arp = nil;
|
||||
return 0;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue