mirror of
https://github.com/gnustep/libs-base.git
synced 2025-04-22 16:33:29 +00:00
corrected NSNumber tests
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32359 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
23237be932
commit
df585bb114
2 changed files with 38 additions and 51 deletions
|
@ -19,25 +19,49 @@
|
|||
|
||||
int main()
|
||||
{
|
||||
START_SET("not-a-number checks")
|
||||
NSNumber *n;
|
||||
NSNumber *nan;
|
||||
START_SET("NSNumber")
|
||||
NSNumber *n;
|
||||
|
||||
n = [NSNumber numberWithInt: 2];
|
||||
nan = [NSDecimalNumber notANumber];
|
||||
START_SET("not-a-number checks")
|
||||
|
||||
PASS(NO == [n isEqualToNumber: nan], "2 is not equal to NaN");
|
||||
PASS(YES == [nan isEqualToNumber: nan], "NaN is equal to NaN");
|
||||
NSNumber *nan = [NSDecimalNumber notANumber];
|
||||
|
||||
PASS([n compare: nan] == NSOrderedDescending, "2 is greater than NaN")
|
||||
PASS([nan compare: n] == NSOrderedAscending, "NaN is less than 2")
|
||||
n = [NSNumber numberWithInt: 2];
|
||||
|
||||
n = [NSNumber numberWithFloat: 0.0];
|
||||
PASS([n compare: nan] == NO, "0.0 is not NaN")
|
||||
PASS(NO == [n isEqualToNumber: nan], "2 is not equal to NaN");
|
||||
PASS(YES == [nan isEqualToNumber: nan], "NaN is equal to NaN");
|
||||
|
||||
n = [NSNumber numberWithFloat: -1.01];
|
||||
PASS([n compare: nan] == NO, "-1.01 is not NaN")
|
||||
PASS([n compare: nan] == NSOrderedDescending, "2 is greater than NaN")
|
||||
PASS([nan compare: n] == NSOrderedAscending, "NaN is less than 2")
|
||||
|
||||
n = [NSNumber numberWithFloat: 0.0];
|
||||
PASS([n compare: nan] == NO, "0.0 is not NaN")
|
||||
|
||||
n = [NSNumber numberWithFloat: -1.01];
|
||||
PASS([n compare: nan] == NO, "-1.01 is not NaN")
|
||||
|
||||
END_SET("not-a-number checks")
|
||||
|
||||
START_SET("zero checks")
|
||||
|
||||
NSNumber *zero = [NSDecimalNumber zero];
|
||||
|
||||
n = [NSNumber numberWithInt: 2];
|
||||
|
||||
PASS(NO == [n isEqualToNumber: zero], "2 is not equal to NaN");
|
||||
PASS(YES == [zero isEqualToNumber: zero], "zero is equal to zero");
|
||||
|
||||
PASS([n compare: zero] == NSOrderedDescending, "2 is greater than zero")
|
||||
PASS([zero compare: n] == NSOrderedAscending, "zero is less than 2")
|
||||
|
||||
n = [NSNumber numberWithFloat: 0.0];
|
||||
PASS([n compare: zero] == NSOrderedSame, "0.0 is zero")
|
||||
|
||||
n = [NSNumber numberWithFloat: -1.01];
|
||||
PASS([n compare: zero] != NSOrderedSame, "-1.01 is not zero")
|
||||
|
||||
END_SET("zero checks")
|
||||
END_SET("NSNumber")
|
||||
|
||||
END_SET("not-a-number checks")
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -1,37 +0,0 @@
|
|||
#import "ObjectTesting.h"
|
||||
#import <Foundation/NSAutoreleasePool.h>
|
||||
#import <Foundation/NSPropertyList.h>
|
||||
#import <Foundation/NSValue.h>
|
||||
#import <Foundation/NSDecimalNumber.h>
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <limits.h>
|
||||
|
||||
#if !defined(LLONG_MAX)
|
||||
# if defined(__LONG_LONG_MAX__)
|
||||
# define LLONG_MAX __LONG_LONG_MAX__
|
||||
# define LLONG_MIN (-LLONG_MAX-1)
|
||||
# define ULLONG_MAX (LLONG_MAX * 2ULL + 1)
|
||||
# else
|
||||
# error Neither LLONG_MAX nor __LONG_LONG_MAX__ found
|
||||
# endif
|
||||
#endif
|
||||
|
||||
int main()
|
||||
{
|
||||
NSNumber *n;
|
||||
NSNumber *zero;
|
||||
|
||||
START_SET("zero checks")
|
||||
|
||||
zero = [NSDecimalNumber zero];
|
||||
|
||||
n = [NSNumber numberWithFloat: 0.0];
|
||||
PASS([n compare: zero] == YES, "0.0 is zero")
|
||||
|
||||
n = [NSNumber numberWithFloat: -1.01];
|
||||
PASS([n compare: zero] == NO, "-1.01 is not zero")
|
||||
|
||||
END_SET("zero checks")
|
||||
return 0;
|
||||
}
|
Loading…
Reference in a new issue