diff --git a/Tests/AFNetworking Tests.xcodeproj/project.pbxproj b/Tests/AFNetworking Tests.xcodeproj/project.pbxproj index 716e8e9..38a2293 100644 --- a/Tests/AFNetworking Tests.xcodeproj/project.pbxproj +++ b/Tests/AFNetworking Tests.xcodeproj/project.pbxproj @@ -195,14 +195,14 @@ 25801548173EB3B00026AA6E /* Tests */ = { isa = PBXGroup; children = ( - A7DC62A417592E4200EBEC2F /* AFTestURLProtocol.h */, - A7DC62A517592E4200EBEC2F /* AFTestURLProtocol.m */, 2580153E173EB3A70026AA6E /* AFNetworkingTests.h */, 2580153F173EB3A70026AA6E /* AFNetworkingTests.m */, + A7DC62A417592E4200EBEC2F /* AFTestURLProtocol.h */, + A7DC62A517592E4200EBEC2F /* AFTestURLProtocol.m */, + A7DC62A817592E4800EBEC2F /* AFURLConnectionOperationTests.m */, 2580153B173EB3A70026AA6E /* AFHTTPRequestOperationTests.m */, 29A9CE2017456336002360C8 /* AFJSONRequestOperationTests.m */, 2580153A173EB3A70026AA6E /* AFHTTPClientTests.m */, - A7DC62A817592E4800EBEC2F /* AFURLConnectionOperationTests.m */, ); name = Tests; sourceTree = ""; diff --git a/Tests/AFTestURLProtocol.h b/Tests/AFTestURLProtocol.h index 6ede840..5eda046 100644 --- a/Tests/AFTestURLProtocol.h +++ b/Tests/AFTestURLProtocol.h @@ -1,6 +1,6 @@ // AFTestURLProtocol.h // -// Copyright (c) 2011 Gowalla (http://gowalla.com/) +// Copyright (c) 2013 AFNetworking (http://afnetworking.com) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -22,13 +22,9 @@ #import - - -/** - @abstract <#abstract comment#> - */ @interface AFTestURLProtocol : NSURLProtocol -+ (void)matchURL:(NSURL *)URL withCallback:(id(^)(AFTestURLProtocol *protocol))initializationCallback; ++ (void)matchURL:(NSURL *)URL + withCallback:(id (^)(AFTestURLProtocol *protocol))initializationCallback; @end diff --git a/Tests/AFTestURLProtocol.m b/Tests/AFTestURLProtocol.m index 95d5e4d..40af355 100644 --- a/Tests/AFTestURLProtocol.m +++ b/Tests/AFTestURLProtocol.m @@ -1,6 +1,6 @@ // AFTestURLProtocol.m // -// Copyright (c) 2011 Gowalla (http://gowalla.com/) +// Copyright (c) 2013 AFNetworking (http://afnetworking.com) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -22,27 +22,28 @@ #import "AFTestURLProtocol.h" -typedef id(^AFTestURLProtocolInitializationCallback)(AFTestURLProtocol *protocol); -static NSURL *matchingURL = nil; -static AFTestURLProtocolInitializationCallback initializationCallback = NULL; - +typedef id (^AFTestURLProtocolInitializationCallback)(AFTestURLProtocol *protocol); +static NSURL * _matchingURL = nil; +static AFTestURLProtocolInitializationCallback _initializationCallback = nil; @implementation AFTestURLProtocol -+ (void)matchURL:(NSURL *)URL withCallback:(id(^)(AFTestURLProtocol *protocol))callback { - matchingURL = URL; - initializationCallback = callback; -} - + (void)load { [NSURLProtocol registerClass:[AFTestURLProtocol class]]; } ++ (void)matchURL:(NSURL *)URL + withCallback:(id(^)(AFTestURLProtocol *protocol))callback +{ + _matchingURL = URL; + _initializationCallback = callback; +} + #pragma mark - NSURLProtocol + (BOOL)canInitWithRequest:(NSURLRequest *)request { - return [request.URL isEqual:matchingURL] && initializationCallback; + return [request.URL isEqual:_matchingURL] && _initializationCallback; } + (NSURLRequest *)canonicalRequestForRequest:(NSURLRequest *)request { @@ -53,46 +54,40 @@ static AFTestURLProtocolInitializationCallback initializationCallback = NULL; return NO; } -- (id)initWithRequest:(NSURLRequest *)request cachedResponse:(NSCachedURLResponse *)cachedResponse client:(id)client { - NSParameterAssert(initializationCallback); +- (id)initWithRequest:(NSURLRequest *)request + cachedResponse:(NSCachedURLResponse *)cachedResponse + client:(id )client +{ + NSParameterAssert(_initializationCallback); - if (self = [super initWithRequest:request cachedResponse:cachedResponse client:client]) { - self = initializationCallback(self); - - matchingURL = nil; - initializationCallback = NULL; + self = [super initWithRequest:request cachedResponse:cachedResponse client:client]; + if (!self) { + return nil; } + + self = _initializationCallback(self); + + _matchingURL = nil; + _initializationCallback = nil; + return self; } -- (void)startLoading { - -} +- (void)startLoading {} -- (void)stopLoading { - -} +- (void)stopLoading {} #pragma mark - NSURLAuthenticationChallengeSender -- (void)useCredential:(NSURLCredential *)credential forAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge { - -} +- (void)cancelAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge {} -- (void)continueWithoutCredentialForAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge { - -} +- (void)continueWithoutCredentialForAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge {} -- (void)cancelAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge { - -} +- (void)useCredential:(NSURLCredential *)credential +forAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge {} -- (void)performDefaultHandlingForAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge { - -} +- (void)performDefaultHandlingForAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge {} -- (void)rejectProtectionSpaceAndContinueWithChallenge:(NSURLAuthenticationChallenge *)challenge { - -} +- (void)rejectProtectionSpaceAndContinueWithChallenge:(NSURLAuthenticationChallenge *)challenge {} @end diff --git a/Tests/AFURLConnectionOperationTests.m b/Tests/AFURLConnectionOperationTests.m index b399d7b..7308583 100644 --- a/Tests/AFURLConnectionOperationTests.m +++ b/Tests/AFURLConnectionOperationTests.m @@ -1,24 +1,33 @@ +// AFJSONRequestOperationTests.m // -// AFJSONRequestOperationTests.m -// AFNetworking Tests +// Copyright (c) 2013 AFNetworking (http://afnetworking.com) // -// Created by Kevin Harwood on 5/16/13. -// Copyright (c) 2013 AFNetworking. All rights reserved. +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: // +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. #import "AFNetworkingTests.h" #import "AFURLConnectionOperation.h" #import "AFTestURLProtocol.h" -#import "OCMock.h" @interface AFURLConnectionOperationTests : SenTestCase - @property (readwrite, nonatomic, strong) NSURL *baseURL; - @end - - @implementation AFURLConnectionOperationTests @synthesize baseURL = _baseURL; @@ -26,6 +35,8 @@ self.baseURL = [NSURL URLWithString:AFNetworkingTestsBaseURLString]; } +#pragma mark - + - (void)testThatAFURLConnectionOperationInvokesWillSendRequestForAuthenticationChallengeBlock { NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"/path" relativeToURL:self.baseURL]]; AFURLConnectionOperation *operation = [[AFURLConnectionOperation alloc] initWithRequest:request];