2011-02-16 08:21:17 +00:00
|
|
|
#import <Foundation/Foundation.h>
|
|
|
|
#import "Testing.h"
|
|
|
|
#import "ObjectTesting.h"
|
|
|
|
|
|
|
|
int main()
|
|
|
|
{
|
|
|
|
NSAutoreleasePool *arp = [NSAutoreleasePool new];
|
|
|
|
NSMutableURLRequest *mutable, *copy;
|
|
|
|
NSURLRequest *canon;
|
|
|
|
NSURL *httpURL;
|
|
|
|
|
|
|
|
httpURL = [NSURL URLWithString: @"http://www.gnustep.org"];
|
|
|
|
|
|
|
|
TEST_FOR_CLASS(@"NSURLProtocol", [NSURLProtocol alloc],
|
|
|
|
"NSURLProtocol +alloc returns an NSURLProtocol");
|
|
|
|
|
|
|
|
mutable = [[NSMutableURLRequest requestWithURL: httpURL] retain];
|
2011-02-24 16:26:01 +00:00
|
|
|
PASS_EXCEPTION([NSURLProtocol canInitWithRequest: mutable], nil,
|
2011-02-16 08:21:17 +00:00
|
|
|
"NSURLProtocol +canInitWithRequest throws an exeception (subclasses should be used)");
|
|
|
|
|
|
|
|
canon = [NSURLProtocol canonicalRequestForRequest: mutable];
|
|
|
|
TEST_FOR_CLASS(@"NSURLRequest", canon,
|
|
|
|
"NSURLProtocol +canonicalRequestForRequest: returns an NSURLProtocol");
|
|
|
|
|
|
|
|
copy = [mutable copy];
|
|
|
|
PASS([NSURLProtocol requestIsCacheEquivalent: mutable toRequest: copy],
|
|
|
|
"NSURLProtocol +requestIsCacheEquivalent:toRequest returns YES with a request and its copy");
|
|
|
|
[copy setHTTPMethod: @"POST"];
|
|
|
|
PASS([NSURLProtocol requestIsCacheEquivalent: mutable toRequest: copy] == NO,
|
|
|
|
"NSURLProtocol +requestIsCacheEquivalent:toRequest returns NO after a method change");
|
|
|
|
[copy release];
|
|
|
|
|
|
|
|
[arp release]; arp = nil;
|
|
|
|
return 0;
|
|
|
|
}
|