libs-base/Tests/base/NSValue/basic.m
Mads Marquart 4033ee28a8 Fix NSGetSizeAndAlignment usage
The argument order is (*sizep, *alignp), but it was often incorrectly used the other way around.
2021-11-02 10:18:05 +01:00

28 lines
832 B
Objective-C

#import <Foundation/Foundation.h>
#import "Testing.h"
#import "ObjectTesting.h"
int main()
{
NSAutoreleasePool *arp = [NSAutoreleasePool new];
NSValue *testObj;
test_alloc_only(@"NSValue");
int val = 5;
int out;
testObj = [NSValue valueWithBytes: &val objCType: @encode(int)];
[testObj getValue: &out];
PASS_EQUAL(val, out, "NSValue -getValue returned the same integer");
NSRange range_val = NSMakeRange(1, 1);
NSRange range_out;
testObj = [NSValue valueWithBytes: &range_val objCType: @encode(NSRange)];
[testObj getValue: &range_out];
PASS(NSEqualRanges(range_val, range_out), "NSValue -getValue returned the same NSRange");
range_out = [testObj rangeValue];
PASS(NSEqualRanges(range_val, range_out), "NSValue -rangeValue returned the same NSRange");
[arp release]; arp = nil;
return 0;
}