今天我必須被困在stoopid上,因爲我花了一個多小時試圖瞭解如何使這個iPhone項目中的變量參數工作。在下面的單元測試中,有人能幫我獲得一個綠色條嗎?我哪裏錯了?iPhone中的變量參數ObjC函數
#import <SenTestingKit/SenTestingKit.h>
@interface VAArgsTest : SenTestCase
{
}
@end
NSString* vaArgsAppend(NSString *first, ...)
{
NSMutableString *list = [[NSMutableString alloc] initWithString:first];
id eachArg;
va_list argumentList;
va_start(argumentList, first);
while(eachArg = va_arg(argumentList, id)) {
if(eachArg)[list appendString:(NSString*)eachArg];
}
va_end(argumentList);
return [list autorelease];
}
@implementation VAArgsTest
-(void) testCallVaArgsAppend
{
NSString *result = vaArgsAppend(@"one ", "two ", @"three");
STAssertEqualObjects(result, @"one two three", @"Expected appended string.");
}
@end
如果你能解釋它是如何失敗的話,這將有所幫助。顯然,斷言失敗,但是結果字符串中返回的內容是什麼? – TechZen 2010-02-15 20:53:39