#import "Testing.h" #import #import #import #import #import int main() { START_SET("NSBundle resources") NSBundle *bundle; NSArray *arr; bundle = [NSBundle bundleWithPath: [[NSFileManager defaultManager] currentDirectoryPath]]; PASS([bundle isKindOfClass: [NSBundle class]], "+bundleWithPath returns anNSBundle"); arr = [bundle pathsForResourcesOfType: @"m" inDirectory: nil]; PASS([arr isKindOfClass: [NSArray class]] && [arr count], "-pathsForResourcesOfType: inDirectory: returns an array"); PASS([bundle pathForResource: @"hiwelf0-2" ofType: nil inDirectory: nil] == nil, "-pathForResource:ofType:inDirectory: works with nil args"); PASS([bundle pathForResource: @"hiwelf0-2" ofType: nil] == nil, "-pathForResource:ofType: works with nil type"); PASS([bundle pathForResource: nil ofType: @"tiff"] == nil, "-pathForResource:ofType: works with nil name"); PASS([bundle pathForResource: @"hiwelf0-2" ofType: @""] == nil, "-pathForResource:ofType: works with empty type"); PASS([bundle pathForResource: @"" ofType: @"tiff"] == nil, "-pathForResource:ofType: works with empty name"); PASS([[bundle resourcePath] testEquals: [[bundle bundlePath] stringByAppendingPathComponent: @"Resources"]], "-resourcePath returns the correct path"); #if defined(GNUSTEP) START_SET("NSBundle GNUstep general") NSBundle *gnustepBundle; gnustepBundle = [NSBundle bundleForLibrary: @"gnustep-base"]; if (nil == gnustepBundle) SKIP("it looks like GNUstep-base is not yet installed") PASS([[NSBundle pathForResource: @"abbreviations" ofType: @"plist" inDirectory: [[gnustepBundle bundlePath] stringByAppendingPathComponent: @"NSTimeZones"]] testForString], "+pathForResource:ofType:inDirectory: works"); PASS([[NSBundle pathForResource: @"abbreviations" ofType: @"plist" inDirectory: [[gnustepBundle bundlePath] stringByAppendingPathComponent: @"NSTimeZones"] withVersion: 0] testForString], "+pathForResource:ofType:inDirectory:withVersion: works"); arr = [gnustepBundle pathsForResourcesOfType: @"m" inDirectory: @"NSTimeZones"]; PASS(([arr isKindOfClass: [NSArray class]] && [arr count] > 0), "-pathsForResourcesOfType:inDirectory: returns an array"); PASS([[gnustepBundle pathForResource: @"abbreviations" ofType: @"plist" inDirectory: @"NSTimeZones"] testForString], "-pathForResource:ofType:inDirectory: finds a file"); PASS([gnustepBundle pathForResource: @"abbreviations" ofType: @"8nicola8" inDirectory: @"NSTimeZones"] == nil, "-pathForResource:ofType:inDirectory: doesn't find non-existing file"); PASS([gnustepBundle pathForResource: @"abbreviations" ofType: @"plist" inDirectory: @"NSTimeZones_dummy"] == nil, "-pathForResource:ofType:inDirectory: doesn't find files in" "a non-existing dir"); PASS([[gnustepBundle pathForResource: @"abbreviations" ofType: nil inDirectory: @"NSTimeZones"] testForString], "-pathForResource:ofType:inDirectory: with nil type finds a file"); PASS([gnustepBundle pathForResource: @"whasssdlkf" ofType: nil inDirectory: @"NSTimeZones"] == nil, "-pathForResource:ofType:inDirectory: with nil type doesn't find" "non-existing files"); PASS([[gnustepBundle pathForResource: @"NSTimeZones" ofType: nil] testForString], "-pathForResource:ofType: finds a file"); END_SET("NSBundle GNUstep resources") #endif END_SET("NSBundle resources") return 0; }