mirror of
https://github.com/gnustep/libs-base.git
synced 2025-04-22 16:33:29 +00:00
add rounding test
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@37626 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
d5e6564198
commit
44a8414812
1 changed files with 42 additions and 0 deletions
42
Tests/base/NSNumber/test02.m
Normal file
42
Tests/base/NSNumber/test02.m
Normal file
|
@ -0,0 +1,42 @@
|
|||
#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>
|
||||
|
||||
int main()
|
||||
{
|
||||
START_SET("NSDecimalNumber")
|
||||
NSDecimalNumberHandler *handler;
|
||||
NSDecimalNumber *n1;
|
||||
NSDecimalNumber *n2;
|
||||
NSString *s1;
|
||||
NSString *s2;
|
||||
|
||||
handler = [NSDecimalNumberHandler alloc];
|
||||
handler = [[handler initWithRoundingMode: NSRoundPlain
|
||||
scale: 2
|
||||
raiseOnExactness: NO
|
||||
raiseOnOverflow: NO
|
||||
raiseOnUnderflow: NO
|
||||
raiseOnDivideByZero: NO] autorelease];
|
||||
|
||||
s1 = [NSString stringWithFormat: @"%0.2f", 0.009];
|
||||
n1 = [NSDecimalNumber decimalNumberWithString: @"0.009"];
|
||||
n2 = [n1 decimalNumberByRoundingAccordingToBehavior: handler];
|
||||
s2 = [n2 description];
|
||||
PASS_EQUAL(s1, s2, "rounding 0.009");
|
||||
|
||||
s1 = [NSString stringWithFormat: @"%0.2f", 0.009];
|
||||
n1 = [NSDecimalNumber decimalNumberWithString: @"0.009"];
|
||||
n2 = [n1 decimalNumberByRoundingAccordingToBehavior: handler];
|
||||
s2 = [n2 description];
|
||||
PASS_EQUAL(s1, s2, "rounding 0.019");
|
||||
|
||||
END_SET("NSDecimalNumber")
|
||||
|
||||
return 0;
|
||||
}
|
Loading…
Reference in a new issue