diff --git a/.gitignore b/.gitignore index 89c499e..fad32b8 100644 --- a/.gitignore +++ b/.gitignore @@ -16,3 +16,4 @@ profile *.moved-aside DerivedData .idea/ +Tests/Pods diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..e87dc1f --- /dev/null +++ b/.travis.yml @@ -0,0 +1,5 @@ +language: objective-c +before_install: + - brew update + - brew install xctool --HEAD +script: rake test diff --git a/AFNetworking.xcworkspace/contents.xcworkspacedata b/AFNetworking.xcworkspace/contents.xcworkspacedata index 66991fb..b09daf4 100644 --- a/AFNetworking.xcworkspace/contents.xcworkspacedata +++ b/AFNetworking.xcworkspace/contents.xcworkspacedata @@ -1,71 +1,16 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + diff --git a/README.md b/README.md index e60615f..de2f414 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,8 @@ AFNetworking

+[![Build Status](https://travis-ci.org/AFNetworking/AFNetworking.png?branch=master)](https://travis-ci.org/AFNetworking/AFNetworking) + AFNetworking is a delightful networking library for iOS and Mac OS X. It's built on top of [NSURLConnection](http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSURLConnection_Class/Reference/Reference.html), [NSOperation](http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/NSOperation_class/Reference/Reference.html), and other familiar Foundation technologies. It has a modular architecture with well-designed, feature-rich APIs that are a joy to use. For example, here's how easy it is to get JSON from a URL: ``` objective-c @@ -160,6 +162,21 @@ If you are using AFNetworking 1.0 in your non-arc project, you will need to set To set a compiler flag in Xcode, go to your active target and select the "Build Phases" tab. Now select all AFNetworking source files, press Enter, insert `-fobjc-arc` or `-fno-objc-arc` and then "Done" to enable or disable ARC for AFNetworking. +## Unit Tests + +AFNetworking includes a suite of unit tests within the Tests subdirectory. In order to run the unit tests, you must install the testing dependencies via CocoaPods. To do so: + +1. `gem install cocoapods` # If necessary +1. `cd Tests` +1. `pod install` + +Once CocoaPods has finished the installation, you can execute the test suite via the 'iOS Tests' and 'OS X Tests' schemes within Xcode. If you wish to execute the tests from the command line or within a continuous integration environment, you will need to install [xctool](https://github.com/facebook/xctool). The recommended installation method is [Homebrew](http://mxcl.github.io/homebrew/). To install the commandline testing support via Homebrew: + +1. `brew update` +1. `brew install xctool --HEAD` + +Once xctool is installed, you can execute the suite via `rake test`. + ## Credits AFNetworking was created by [Scott Raymond](https://github.com/sco/) and [Mattt Thompson](https://github.com/mattt/) in the development of [Gowalla for iPhone](http://en.wikipedia.org/wiki/Gowalla). diff --git a/Rakefile b/Rakefile new file mode 100644 index 0000000..df32ced --- /dev/null +++ b/Rakefile @@ -0,0 +1,24 @@ +namespace :test do + desc "Run the AFNetworking Tests for iOS" + task :ios do + $ios_success = system("xctool -workspace AFNetworking.xcworkspace -scheme 'iOS Tests' test -test-sdk iphonesimulator") + end + + desc "Run the AFNetworking Tests for Mac OS X" + task :osx do + $osx_success = system("xctool -workspace AFNetworking.xcworkspace -scheme 'OS X Tests' test -test-sdk macosx -sdk macosx") + end +end + +desc "Run the AFNetworking Tests for iOS & Mac OS X" +task :test => ['test:ios', 'test:osx'] do + puts "\033[0;31m!! iOS unit tests failed" unless $ios_success + puts "\033[0;31m!! OS X unit tests failed" unless $osx_success + if $ios_success && $osx_success + puts "\033[0;32m** All tests executed successfully" + else + exit(-1) + end +end + +task :default => 'test' diff --git a/Tests/AFHTTPClientTests.m b/Tests/AFHTTPClientTests.m new file mode 100644 index 0000000..e7681ed --- /dev/null +++ b/Tests/AFHTTPClientTests.m @@ -0,0 +1,66 @@ +// +// AFHTTPClientTests.m +// AFNetworking +// +// Created by Blake Watters on 5/10/13. +// Copyright (c) 2013 AFNetworking. All rights reserved. +// + +#import "AFNetworkingTests.h" + +@interface AFHTTPClientTests : SenTestCase +@end + +@implementation AFHTTPClientTests + +- (void)testThatTheDefaultStringEncodingIsUTF8 +{ + AFHTTPClient *client = [AFHTTPClient clientWithBaseURL:[NSURL URLWithString:AFNetworkingTestsBaseURLString]]; + expect(client.stringEncoding).to.equal(NSUTF8StringEncoding); +} + +- (void)testConstructingPOSTRequestWithParametersInFormURLParameterEncoding +{ + AFHTTPClient *client = [AFHTTPClient clientWithBaseURL:[NSURL URLWithString:AFNetworkingTestsBaseURLString]]; + client.parameterEncoding = AFFormURLParameterEncoding; + NSMutableURLRequest *request = [client requestWithMethod:@"POST" path:@"/post" parameters:@{ @"key": @"value" }]; + NSString *requestBody = [[NSString alloc] initWithData:[request HTTPBody] encoding:NSUTF8StringEncoding]; + expect(requestBody).to.equal(@"key=value"); +} + +- (void)testConstructingPOSTRequestWithParametersInJSONParameterEncoding +{ + AFHTTPClient *client = [AFHTTPClient clientWithBaseURL:[NSURL URLWithString:AFNetworkingTestsBaseURLString]]; + client.parameterEncoding = AFJSONParameterEncoding; + NSMutableURLRequest *request = [client requestWithMethod:@"POST" path:@"/post" parameters:@{ @"key": @"value" }]; + NSString *requestBody = [[NSString alloc] initWithData:[request HTTPBody] encoding:NSUTF8StringEncoding]; + expect(requestBody).to.equal(@"{\"key\":\"value\"}"); +} + +- (void)testConstructingPOSTRequestWithParametersInPropertyListParameterEncoding +{ + AFHTTPClient *client = [AFHTTPClient clientWithBaseURL:[NSURL URLWithString:AFNetworkingTestsBaseURLString]]; + client.parameterEncoding = AFPropertyListParameterEncoding; + NSMutableURLRequest *request = [client requestWithMethod:@"POST" path:@"/post" parameters:@{ @"key": @"value" }]; + NSString *requestBody = [[NSString alloc] initWithData:[request HTTPBody] encoding:NSUTF8StringEncoding]; + expect(requestBody).to.equal(@"\n\n\n\n key\n value\n\n\n"); +} + +- (void)testPostWithParameters +{ + __block id blockResponseObject = nil; + AFHTTPClient *client = [AFHTTPClient clientWithBaseURL:[NSURL URLWithString:AFNetworkingTestsBaseURLString]]; + [client postPath:@"/post" parameters:@{ @"key": @"value" } success:^(AFHTTPRequestOperation *operation, id responseObject) { + blockResponseObject = responseObject; + } failure:nil]; + expect([client.operationQueue operationCount]).will.equal(0); + expect(blockResponseObject).notTo.beNil(); + expect(blockResponseObject).to.beKindOf([NSData class]); + NSError *error = nil; + NSDictionary *responseDictionary = [NSJSONSerialization JSONObjectWithData:blockResponseObject options:0 error:&error]; + expect(responseDictionary[@"form"]).to.equal(@{ @"key": @"value" }); +} + +// default value for header + +@end diff --git a/Tests/AFHTTPRequestOperationTests.m b/Tests/AFHTTPRequestOperationTests.m new file mode 100644 index 0000000..1350e31 --- /dev/null +++ b/Tests/AFHTTPRequestOperationTests.m @@ -0,0 +1,120 @@ +// +// AFHTTPRequestOperationTests.m +// AFNetworking +// +// Created by Blake Watters on 5/10/13. +// Copyright (c) 2013 AFNetworking. All rights reserved. +// + +#import "AFNetworkingTests.h" + +@interface AFHTTPRequestOperationTests : SenTestCase +@end + +@implementation AFHTTPRequestOperationTests + +- (void)testThatOperationInvokesSuccessCompletionBlockWithResponseObjectOnSuccess +{ + __block id blockResponseObject = nil; + NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"/get" relativeToURL:AFNetworkingTestsBaseURL()]]; + AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request]; + [operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) { + blockResponseObject = responseObject; + } failure:nil]; + [operation start]; + expect([operation isFinished]).will.beTruthy(); + expect(blockResponseObject).willNot.beNil(); +} + +- (void)testThatOperationInvokesFailureCompletionBlockWithErrorOnFailure +{ + __block NSError *blockError = nil; + NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"/status/404" relativeToURL:AFNetworkingTestsBaseURL()]]; + AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request]; + [operation setCompletionBlockWithSuccess:nil failure:^(AFHTTPRequestOperation *operation, NSError *error) { + blockError = error; + }]; + [operation start]; + expect([operation isFinished]).will.beTruthy(); + expect(blockError).willNot.beNil(); +} + +- (void)testThatCancellationOfRequestOperationSetsError +{ + NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"/delay/5" relativeToURL:AFNetworkingTestsBaseURL()]]; + AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request]; + [operation start]; + expect([operation isExecuting]).will.beTruthy(); + [operation cancel]; + expect(operation.error).willNot.beNil(); + expect(operation.error.code).to.equal(NSURLErrorCancelled); +} + +- (void)testThatCancellationOfRequestOperationInvokesFailureCompletionBlock +{ + __block NSError *blockError = nil; + NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"/delay/1" relativeToURL:AFNetworkingTestsBaseURL()]]; + AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request]; + [operation setCompletionBlockWithSuccess:nil failure:^(AFHTTPRequestOperation *operation, NSError *error) { + blockError = error; + }]; + [operation start]; + expect([operation isExecuting]).will.beTruthy(); + [operation cancel]; + expect(operation.error).willNot.beNil(); + expect(blockError).willNot.beNil(); + expect(blockError.code).will.equal(NSURLErrorCancelled); +} + +- (void)testThat500StatusCodeInvokesFailureCompletionBlockWithErrorOnFailure +{ + __block NSError *blockError = nil; + NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"/status/500" relativeToURL:AFNetworkingTestsBaseURL()]]; + AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request]; + [operation setCompletionBlockWithSuccess:nil failure:^(AFHTTPRequestOperation *operation, NSError *error) { + blockError = error; + }]; + [operation start]; + expect([operation isFinished]).will.beTruthy(); + expect(blockError).willNot.beNil(); +} + +- (void)testThatRedirectBlockIsCalledWhen302IsEncountered +{ + __block BOOL success; + NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"/redirect/1" relativeToURL:AFNetworkingTestsBaseURL()]]; + AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request]; + [operation setCompletionBlockWithSuccess:nil + failure:nil]; + [operation + setRedirectResponseBlock:^NSURLRequest *(NSURLConnection *connection, NSURLRequest *request, NSURLResponse *redirectResponse) { + if(redirectResponse){ + success = YES; + } + return request; + }]; + [operation start]; + expect([operation isFinished]).will.beTruthy(); + expect(success).will.beTruthy(); +} + +- (void)testThatRedirectBlockIsCalledMultipleTimesWhen302IsEncountered +{ + __block NSInteger numberOfRedirects = 0; + NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"/redirect/5" relativeToURL:AFNetworkingTestsBaseURL()]]; + AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request]; + [operation setCompletionBlockWithSuccess:nil + failure:nil]; + [operation + setRedirectResponseBlock:^NSURLRequest *(NSURLConnection *connection, NSURLRequest *request, NSURLResponse *redirectResponse) { + if(redirectResponse){ + numberOfRedirects++; + } + return request; + }]; + [operation start]; + expect([operation isFinished]).will.beTruthy(); + expect(numberOfRedirects).will.equal(5); +} + +@end diff --git a/Tests/AFNetworking Tests.xcodeproj/project.pbxproj b/Tests/AFNetworking Tests.xcodeproj/project.pbxproj new file mode 100644 index 0000000..a16b6cc --- /dev/null +++ b/Tests/AFNetworking Tests.xcodeproj/project.pbxproj @@ -0,0 +1,521 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 0BAD1A5426FC47BF8790D245 /* libPods-ios.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 55E73C267F33406A9F92476C /* libPods-ios.a */; }; + 2544EC45173BE382004117E8 /* SenTestingKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2544EC44173BE382004117E8 /* SenTestingKit.framework */; }; + 2544EC47173BE382004117E8 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2544EC46173BE382004117E8 /* UIKit.framework */; }; + 2544EC48173BE382004117E8 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2544EC35173BE382004117E8 /* Foundation.framework */; }; + 2544EC96173BFAA8004117E8 /* SenTestingKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2544EC44173BE382004117E8 /* SenTestingKit.framework */; }; + 2544EC97173BFAA8004117E8 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2544EC80173BFAA8004117E8 /* Cocoa.framework */; }; + 25801540173EB3A70026AA6E /* AFHTTPClientTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 2580153A173EB3A70026AA6E /* AFHTTPClientTests.m */; }; + 25801541173EB3A70026AA6E /* AFHTTPClientTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 2580153A173EB3A70026AA6E /* AFHTTPClientTests.m */; }; + 25801542173EB3A70026AA6E /* AFHTTPRequestOperationTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 2580153B173EB3A70026AA6E /* AFHTTPRequestOperationTests.m */; }; + 25801543173EB3A70026AA6E /* AFHTTPRequestOperationTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 2580153B173EB3A70026AA6E /* AFHTTPRequestOperationTests.m */; }; + 25801546173EB3A70026AA6E /* AFNetworkingTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 2580153F173EB3A70026AA6E /* AFNetworkingTests.m */; }; + 25801547173EB3A70026AA6E /* AFNetworkingTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 2580153F173EB3A70026AA6E /* AFNetworkingTests.m */; }; + 2580154B173EB62E0026AA6E /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 25C4EC2A173D7DB30083E116 /* SystemConfiguration.framework */; }; + 2580154C173EB6340026AA6E /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 25C4EC2C173D7DBA0083E116 /* CoreServices.framework */; }; + 25C4EC41173D86AE0083E116 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 25C4EC32173D7DD20083E116 /* SystemConfiguration.framework */; }; + 25C4EC42173D86B60083E116 /* MobileCoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 25C4EC30173D7DCA0083E116 /* MobileCoreServices.framework */; }; + 25DE600E173EB13C00422571 /* AFHTTPClient.m in Sources */ = {isa = PBXBuildFile; fileRef = 25DE5FFC173EB13C00422571 /* AFHTTPClient.m */; }; + 25DE600F173EB13C00422571 /* AFHTTPClient.m in Sources */ = {isa = PBXBuildFile; fileRef = 25DE5FFC173EB13C00422571 /* AFHTTPClient.m */; }; + 25DE6010173EB13C00422571 /* AFHTTPRequestOperation.m in Sources */ = {isa = PBXBuildFile; fileRef = 25DE5FFE173EB13C00422571 /* AFHTTPRequestOperation.m */; }; + 25DE6011173EB13C00422571 /* AFHTTPRequestOperation.m in Sources */ = {isa = PBXBuildFile; fileRef = 25DE5FFE173EB13C00422571 /* AFHTTPRequestOperation.m */; }; + 25DE6012173EB13C00422571 /* AFImageRequestOperation.m in Sources */ = {isa = PBXBuildFile; fileRef = 25DE6000173EB13C00422571 /* AFImageRequestOperation.m */; }; + 25DE6013173EB13C00422571 /* AFImageRequestOperation.m in Sources */ = {isa = PBXBuildFile; fileRef = 25DE6000173EB13C00422571 /* AFImageRequestOperation.m */; }; + 25DE6014173EB13C00422571 /* AFJSONRequestOperation.m in Sources */ = {isa = PBXBuildFile; fileRef = 25DE6002173EB13C00422571 /* AFJSONRequestOperation.m */; }; + 25DE6015173EB13C00422571 /* AFJSONRequestOperation.m in Sources */ = {isa = PBXBuildFile; fileRef = 25DE6002173EB13C00422571 /* AFJSONRequestOperation.m */; }; + 25DE6016173EB13C00422571 /* AFNetworkActivityIndicatorManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 25DE6004173EB13C00422571 /* AFNetworkActivityIndicatorManager.m */; }; + 25DE6017173EB13C00422571 /* AFNetworkActivityIndicatorManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 25DE6004173EB13C00422571 /* AFNetworkActivityIndicatorManager.m */; }; + 25DE6018173EB13C00422571 /* AFPropertyListRequestOperation.m in Sources */ = {isa = PBXBuildFile; fileRef = 25DE6007173EB13C00422571 /* AFPropertyListRequestOperation.m */; }; + 25DE6019173EB13C00422571 /* AFPropertyListRequestOperation.m in Sources */ = {isa = PBXBuildFile; fileRef = 25DE6007173EB13C00422571 /* AFPropertyListRequestOperation.m */; }; + 25DE601A173EB13C00422571 /* AFURLConnectionOperation.m in Sources */ = {isa = PBXBuildFile; fileRef = 25DE6009173EB13C00422571 /* AFURLConnectionOperation.m */; }; + 25DE601B173EB13C00422571 /* AFURLConnectionOperation.m in Sources */ = {isa = PBXBuildFile; fileRef = 25DE6009173EB13C00422571 /* AFURLConnectionOperation.m */; }; + 25DE601C173EB13C00422571 /* AFXMLRequestOperation.m in Sources */ = {isa = PBXBuildFile; fileRef = 25DE600B173EB13C00422571 /* AFXMLRequestOperation.m */; }; + 25DE601D173EB13C00422571 /* AFXMLRequestOperation.m in Sources */ = {isa = PBXBuildFile; fileRef = 25DE600B173EB13C00422571 /* AFXMLRequestOperation.m */; }; + 25DE601E173EB13C00422571 /* UIImageView+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 25DE600D173EB13C00422571 /* UIImageView+AFNetworking.m */; }; + 25DE601F173EB13C00422571 /* UIImageView+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 25DE600D173EB13C00422571 /* UIImageView+AFNetworking.m */; }; + AC11A74923B64A3096ACADFC /* libPods-osx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 96A923755B00464187DEDBAF /* libPods-osx.a */; }; +/* End PBXBuildFile section */ + +/* Begin PBXFileReference section */ + 2544EC35173BE382004117E8 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; + 2544EC43173BE382004117E8 /* iOS Tests.octest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "iOS Tests.octest"; sourceTree = BUILT_PRODUCTS_DIR; }; + 2544EC44173BE382004117E8 /* SenTestingKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SenTestingKit.framework; path = Library/Frameworks/SenTestingKit.framework; sourceTree = DEVELOPER_DIR; }; + 2544EC46173BE382004117E8 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; }; + 2544EC80173BFAA8004117E8 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = Library/Frameworks/Cocoa.framework; sourceTree = DEVELOPER_DIR; }; + 2544EC83173BFAA8004117E8 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; }; + 2544EC84173BFAA8004117E8 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; }; + 2544EC85173BFAA8004117E8 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; + 2544EC95173BFAA8004117E8 /* OS X Tests.octest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "OS X Tests.octest"; sourceTree = BUILT_PRODUCTS_DIR; }; + 2580153A173EB3A70026AA6E /* AFHTTPClientTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AFHTTPClientTests.m; sourceTree = ""; }; + 2580153B173EB3A70026AA6E /* AFHTTPRequestOperationTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AFHTTPRequestOperationTests.m; sourceTree = ""; }; + 2580153E173EB3A70026AA6E /* AFNetworkingTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AFNetworkingTests.h; sourceTree = ""; }; + 2580153F173EB3A70026AA6E /* AFNetworkingTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AFNetworkingTests.m; sourceTree = ""; }; + 25801549173EB4B40026AA6E /* Pods-ios.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = "Pods-ios.xcconfig"; path = "Pods/Pods-ios.xcconfig"; sourceTree = ""; }; + 2580154A173EB4B40026AA6E /* Pods-osx.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = "Pods-osx.xcconfig"; path = "Pods/Pods-osx.xcconfig"; sourceTree = ""; }; + 25C4EC2A173D7DB30083E116 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/SystemConfiguration.framework; sourceTree = DEVELOPER_DIR; }; + 25C4EC2C173D7DBA0083E116 /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/CoreServices.framework; sourceTree = DEVELOPER_DIR; }; + 25C4EC2E173D7DC40083E116 /* CFNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CFNetwork.framework; path = System/Library/Frameworks/CFNetwork.framework; sourceTree = SDKROOT; }; + 25C4EC30173D7DCA0083E116 /* MobileCoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MobileCoreServices.framework; path = System/Library/Frameworks/MobileCoreServices.framework; sourceTree = SDKROOT; }; + 25C4EC32173D7DD20083E116 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = System/Library/Frameworks/SystemConfiguration.framework; sourceTree = SDKROOT; }; + 25DE5FFB173EB13C00422571 /* AFHTTPClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AFHTTPClient.h; sourceTree = ""; }; + 25DE5FFC173EB13C00422571 /* AFHTTPClient.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AFHTTPClient.m; sourceTree = ""; }; + 25DE5FFD173EB13C00422571 /* AFHTTPRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AFHTTPRequestOperation.h; sourceTree = ""; }; + 25DE5FFE173EB13C00422571 /* AFHTTPRequestOperation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AFHTTPRequestOperation.m; sourceTree = ""; }; + 25DE5FFF173EB13C00422571 /* AFImageRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AFImageRequestOperation.h; sourceTree = ""; }; + 25DE6000173EB13C00422571 /* AFImageRequestOperation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AFImageRequestOperation.m; sourceTree = ""; }; + 25DE6001173EB13C00422571 /* AFJSONRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AFJSONRequestOperation.h; sourceTree = ""; }; + 25DE6002173EB13C00422571 /* AFJSONRequestOperation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AFJSONRequestOperation.m; sourceTree = ""; }; + 25DE6003173EB13C00422571 /* AFNetworkActivityIndicatorManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AFNetworkActivityIndicatorManager.h; sourceTree = ""; }; + 25DE6004173EB13C00422571 /* AFNetworkActivityIndicatorManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AFNetworkActivityIndicatorManager.m; sourceTree = ""; }; + 25DE6005173EB13C00422571 /* AFNetworking.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AFNetworking.h; sourceTree = ""; }; + 25DE6006173EB13C00422571 /* AFPropertyListRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AFPropertyListRequestOperation.h; sourceTree = ""; }; + 25DE6007173EB13C00422571 /* AFPropertyListRequestOperation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AFPropertyListRequestOperation.m; sourceTree = ""; }; + 25DE6008173EB13C00422571 /* AFURLConnectionOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AFURLConnectionOperation.h; sourceTree = ""; }; + 25DE6009173EB13C00422571 /* AFURLConnectionOperation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AFURLConnectionOperation.m; sourceTree = ""; }; + 25DE600A173EB13C00422571 /* AFXMLRequestOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AFXMLRequestOperation.h; sourceTree = ""; }; + 25DE600B173EB13C00422571 /* AFXMLRequestOperation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AFXMLRequestOperation.m; sourceTree = ""; }; + 25DE600C173EB13C00422571 /* UIImageView+AFNetworking.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIImageView+AFNetworking.h"; sourceTree = ""; }; + 25DE600D173EB13C00422571 /* UIImageView+AFNetworking.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIImageView+AFNetworking.m"; sourceTree = ""; }; + 2B6D24F8E1B74E10A269E8B3 /* libPods.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPods.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 55E73C267F33406A9F92476C /* libPods-ios.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ios.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 96A923755B00464187DEDBAF /* libPods-osx.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-osx.a"; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 2544EC3F173BE382004117E8 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 25C4EC42173D86B60083E116 /* MobileCoreServices.framework in Frameworks */, + 25C4EC41173D86AE0083E116 /* SystemConfiguration.framework in Frameworks */, + 2544EC45173BE382004117E8 /* SenTestingKit.framework in Frameworks */, + 2544EC47173BE382004117E8 /* UIKit.framework in Frameworks */, + 2544EC48173BE382004117E8 /* Foundation.framework in Frameworks */, + 0BAD1A5426FC47BF8790D245 /* libPods-ios.a in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 2544EC91173BFAA8004117E8 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 2580154C173EB6340026AA6E /* CoreServices.framework in Frameworks */, + 2580154B173EB62E0026AA6E /* SystemConfiguration.framework in Frameworks */, + 2544EC96173BFAA8004117E8 /* SenTestingKit.framework in Frameworks */, + 2544EC97173BFAA8004117E8 /* Cocoa.framework in Frameworks */, + AC11A74923B64A3096ACADFC /* libPods-osx.a in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 2544EC29173BE382004117E8 = { + isa = PBXGroup; + children = ( + 25801549173EB4B40026AA6E /* Pods-ios.xcconfig */, + 2580154A173EB4B40026AA6E /* Pods-osx.xcconfig */, + 25801548173EB3B00026AA6E /* Tests */, + 2544EC37173BE382004117E8 /* AFNetworking */, + 2544EC34173BE382004117E8 /* Frameworks */, + 2544EC33173BE382004117E8 /* Products */, + ); + sourceTree = ""; + }; + 2544EC33173BE382004117E8 /* Products */ = { + isa = PBXGroup; + children = ( + 2544EC43173BE382004117E8 /* iOS Tests.octest */, + 2544EC95173BFAA8004117E8 /* OS X Tests.octest */, + ); + name = Products; + sourceTree = ""; + }; + 2544EC34173BE382004117E8 /* Frameworks */ = { + isa = PBXGroup; + children = ( + 25C4EC32173D7DD20083E116 /* SystemConfiguration.framework */, + 25C4EC30173D7DCA0083E116 /* MobileCoreServices.framework */, + 25C4EC2E173D7DC40083E116 /* CFNetwork.framework */, + 25C4EC2C173D7DBA0083E116 /* CoreServices.framework */, + 25C4EC2A173D7DB30083E116 /* SystemConfiguration.framework */, + 2544EC35173BE382004117E8 /* Foundation.framework */, + 2544EC44173BE382004117E8 /* SenTestingKit.framework */, + 2544EC46173BE382004117E8 /* UIKit.framework */, + 2544EC80173BFAA8004117E8 /* Cocoa.framework */, + 2544EC82173BFAA8004117E8 /* Other Frameworks */, + 55E73C267F33406A9F92476C /* libPods-ios.a */, + 96A923755B00464187DEDBAF /* libPods-osx.a */, + 2B6D24F8E1B74E10A269E8B3 /* libPods.a */, + ); + name = Frameworks; + sourceTree = ""; + }; + 2544EC37173BE382004117E8 /* AFNetworking */ = { + isa = PBXGroup; + children = ( + 25DE5FFB173EB13C00422571 /* AFHTTPClient.h */, + 25DE5FFC173EB13C00422571 /* AFHTTPClient.m */, + 25DE5FFD173EB13C00422571 /* AFHTTPRequestOperation.h */, + 25DE5FFE173EB13C00422571 /* AFHTTPRequestOperation.m */, + 25DE5FFF173EB13C00422571 /* AFImageRequestOperation.h */, + 25DE6000173EB13C00422571 /* AFImageRequestOperation.m */, + 25DE6001173EB13C00422571 /* AFJSONRequestOperation.h */, + 25DE6002173EB13C00422571 /* AFJSONRequestOperation.m */, + 25DE6003173EB13C00422571 /* AFNetworkActivityIndicatorManager.h */, + 25DE6004173EB13C00422571 /* AFNetworkActivityIndicatorManager.m */, + 25DE6005173EB13C00422571 /* AFNetworking.h */, + 25DE6006173EB13C00422571 /* AFPropertyListRequestOperation.h */, + 25DE6007173EB13C00422571 /* AFPropertyListRequestOperation.m */, + 25DE6008173EB13C00422571 /* AFURLConnectionOperation.h */, + 25DE6009173EB13C00422571 /* AFURLConnectionOperation.m */, + 25DE600A173EB13C00422571 /* AFXMLRequestOperation.h */, + 25DE600B173EB13C00422571 /* AFXMLRequestOperation.m */, + 25DE600C173EB13C00422571 /* UIImageView+AFNetworking.h */, + 25DE600D173EB13C00422571 /* UIImageView+AFNetworking.m */, + ); + name = AFNetworking; + path = ../AFNetworking; + sourceTree = ""; + }; + 2544EC82173BFAA8004117E8 /* Other Frameworks */ = { + isa = PBXGroup; + children = ( + 2544EC83173BFAA8004117E8 /* AppKit.framework */, + 2544EC84173BFAA8004117E8 /* CoreData.framework */, + 2544EC85173BFAA8004117E8 /* Foundation.framework */, + ); + name = "Other Frameworks"; + sourceTree = ""; + }; + 25801548173EB3B00026AA6E /* Tests */ = { + isa = PBXGroup; + children = ( + 2580153A173EB3A70026AA6E /* AFHTTPClientTests.m */, + 2580153B173EB3A70026AA6E /* AFHTTPRequestOperationTests.m */, + 2580153E173EB3A70026AA6E /* AFNetworkingTests.h */, + 2580153F173EB3A70026AA6E /* AFNetworkingTests.m */, + ); + name = Tests; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 2544EC42173BE382004117E8 /* iOS Tests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 2544EC5A173BE382004117E8 /* Build configuration list for PBXNativeTarget "iOS Tests" */; + buildPhases = ( + 2544EC3E173BE382004117E8 /* Sources */, + 2544EC3F173BE382004117E8 /* Frameworks */, + 2544EC40173BE382004117E8 /* Resources */, + 2544EC41173BE382004117E8 /* ShellScript */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "iOS Tests"; + productName = AFNetworkingTests; + productReference = 2544EC43173BE382004117E8 /* iOS Tests.octest */; + productType = "com.apple.product-type.bundle"; + }; + 2544EC94173BFAA8004117E8 /* OS X Tests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 2544ECA7173BFAA8004117E8 /* Build configuration list for PBXNativeTarget "OS X Tests" */; + buildPhases = ( + 2544EC90173BFAA8004117E8 /* Sources */, + 2544EC91173BFAA8004117E8 /* Frameworks */, + 2544EC92173BFAA8004117E8 /* Resources */, + 2544EC93173BFAA8004117E8 /* ShellScript */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "OS X Tests"; + productName = AFNetworkingFrameworkTests; + productReference = 2544EC95173BFAA8004117E8 /* OS X Tests.octest */; + productType = "com.apple.product-type.bundle"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 2544EC2A173BE382004117E8 /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 0460; + ORGANIZATIONNAME = AFNetworking; + }; + buildConfigurationList = 2544EC2D173BE382004117E8 /* Build configuration list for PBXProject "AFNetworking Tests" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = English; + hasScannedForEncodings = 0; + knownRegions = ( + en, + ); + mainGroup = 2544EC29173BE382004117E8; + productRefGroup = 2544EC33173BE382004117E8 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 2544EC42173BE382004117E8 /* iOS Tests */, + 2544EC94173BFAA8004117E8 /* OS X Tests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 2544EC40173BE382004117E8 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 2544EC92173BFAA8004117E8 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 2544EC41173BE382004117E8 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "# Run the unit tests in this test bundle.\n\"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests\"\n"; + }; + 2544EC93173BFAA8004117E8 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "# Run the unit tests in this test bundle.\n\"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests\"\n"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 2544EC3E173BE382004117E8 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 25DE600E173EB13C00422571 /* AFHTTPClient.m in Sources */, + 25DE6010173EB13C00422571 /* AFHTTPRequestOperation.m in Sources */, + 25DE6012173EB13C00422571 /* AFImageRequestOperation.m in Sources */, + 25DE6014173EB13C00422571 /* AFJSONRequestOperation.m in Sources */, + 25DE6016173EB13C00422571 /* AFNetworkActivityIndicatorManager.m in Sources */, + 25DE6018173EB13C00422571 /* AFPropertyListRequestOperation.m in Sources */, + 25DE601A173EB13C00422571 /* AFURLConnectionOperation.m in Sources */, + 25DE601C173EB13C00422571 /* AFXMLRequestOperation.m in Sources */, + 25DE601E173EB13C00422571 /* UIImageView+AFNetworking.m in Sources */, + 25801540173EB3A70026AA6E /* AFHTTPClientTests.m in Sources */, + 25801542173EB3A70026AA6E /* AFHTTPRequestOperationTests.m in Sources */, + 25801546173EB3A70026AA6E /* AFNetworkingTests.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 2544EC90173BFAA8004117E8 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 25DE600F173EB13C00422571 /* AFHTTPClient.m in Sources */, + 25DE6011173EB13C00422571 /* AFHTTPRequestOperation.m in Sources */, + 25DE6013173EB13C00422571 /* AFImageRequestOperation.m in Sources */, + 25DE6015173EB13C00422571 /* AFJSONRequestOperation.m in Sources */, + 25DE6017173EB13C00422571 /* AFNetworkActivityIndicatorManager.m in Sources */, + 25DE6019173EB13C00422571 /* AFPropertyListRequestOperation.m in Sources */, + 25DE601B173EB13C00422571 /* AFURLConnectionOperation.m in Sources */, + 25DE601D173EB13C00422571 /* AFXMLRequestOperation.m in Sources */, + 25DE601F173EB13C00422571 /* UIImageView+AFNetworking.m in Sources */, + 25801541173EB3A70026AA6E /* AFHTTPClientTests.m in Sources */, + 25801543173EB3A70026AA6E /* AFHTTPRequestOperationTests.m in Sources */, + 25801547173EB3A70026AA6E /* AFNetworkingTests.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 2544EC55173BE382004117E8 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 6.1; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + }; + name = Debug; + }; + 2544EC56173BE382004117E8 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 6.1; + SDKROOT = iphoneos; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 2544EC5B173BE382004117E8 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 25801549173EB4B40026AA6E /* Pods-ios.xcconfig */; + buildSettings = { + FRAMEWORK_SEARCH_PATHS = ( + "\"$(SDKROOT)/Developer/Library/Frameworks\"", + "\"$(DEVELOPER_LIBRARY_DIR)/Frameworks\"", + ); + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "AFNetworking-Prefix.pch"; + INFOPLIST_FILE = "AFNetworkingTests-Info.plist"; + PRODUCT_NAME = "$(TARGET_NAME)"; + WRAPPER_EXTENSION = octest; + }; + name = Debug; + }; + 2544EC5C173BE382004117E8 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 25801549173EB4B40026AA6E /* Pods-ios.xcconfig */; + buildSettings = { + FRAMEWORK_SEARCH_PATHS = ( + "\"$(SDKROOT)/Developer/Library/Frameworks\"", + "\"$(DEVELOPER_LIBRARY_DIR)/Frameworks\"", + ); + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "AFNetworking-Prefix.pch"; + INFOPLIST_FILE = "AFNetworkingTests-Info.plist"; + PRODUCT_NAME = "$(TARGET_NAME)"; + WRAPPER_EXTENSION = octest; + }; + name = Release; + }; + 2544ECA8173BFAA8004117E8 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 2580154A173EB4B40026AA6E /* Pods-osx.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + COMBINE_HIDPI_IMAGES = YES; + FRAMEWORK_SEARCH_PATHS = "\"$(DEVELOPER_LIBRARY_DIR)/Frameworks\""; + GCC_ENABLE_OBJC_EXCEPTIONS = YES; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "AFNetworking-Prefix.pch"; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + INFOPLIST_FILE = "AFNetworkingTests-Info.plist"; + MACOSX_DEPLOYMENT_TARGET = 10.8; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = macosx; + WRAPPER_EXTENSION = octest; + }; + name = Debug; + }; + 2544ECA9173BFAA8004117E8 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 2580154A173EB4B40026AA6E /* Pods-osx.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + COMBINE_HIDPI_IMAGES = YES; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + FRAMEWORK_SEARCH_PATHS = "\"$(DEVELOPER_LIBRARY_DIR)/Frameworks\""; + GCC_ENABLE_OBJC_EXCEPTIONS = YES; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "AFNetworking-Prefix.pch"; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + INFOPLIST_FILE = "AFNetworkingTests-Info.plist"; + MACOSX_DEPLOYMENT_TARGET = 10.8; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = macosx; + WRAPPER_EXTENSION = octest; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 2544EC2D173BE382004117E8 /* Build configuration list for PBXProject "AFNetworking Tests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 2544EC55173BE382004117E8 /* Debug */, + 2544EC56173BE382004117E8 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 2544EC5A173BE382004117E8 /* Build configuration list for PBXNativeTarget "iOS Tests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 2544EC5B173BE382004117E8 /* Debug */, + 2544EC5C173BE382004117E8 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 2544ECA7173BFAA8004117E8 /* Build configuration list for PBXNativeTarget "OS X Tests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 2544ECA8173BFAA8004117E8 /* Debug */, + 2544ECA9173BFAA8004117E8 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 2544EC2A173BE382004117E8 /* Project object */; +} diff --git a/Tests/AFNetworking Tests.xcodeproj/xcshareddata/xcschemes/OS X Tests.xcscheme b/Tests/AFNetworking Tests.xcodeproj/xcshareddata/xcschemes/OS X Tests.xcscheme new file mode 100644 index 0000000..57a00f4 --- /dev/null +++ b/Tests/AFNetworking Tests.xcodeproj/xcshareddata/xcschemes/OS X Tests.xcscheme @@ -0,0 +1,69 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/AFNetworking Tests.xcodeproj/xcshareddata/xcschemes/iOS Tests.xcscheme b/Tests/AFNetworking Tests.xcodeproj/xcshareddata/xcschemes/iOS Tests.xcscheme new file mode 100644 index 0000000..f5cbe8b --- /dev/null +++ b/Tests/AFNetworking Tests.xcodeproj/xcshareddata/xcschemes/iOS Tests.xcscheme @@ -0,0 +1,69 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/AFNetworking-Prefix.pch b/Tests/AFNetworking-Prefix.pch new file mode 100644 index 0000000..59f8ee7 --- /dev/null +++ b/Tests/AFNetworking-Prefix.pch @@ -0,0 +1,16 @@ +// +// Prefix header for all source files of the 'AFNetworking' target in the 'AFNetworking' project +// + +#ifdef __OBJC__ + #import + + #import + #if __IPHONE_OS_VERSION_MIN_REQUIRED + #import + #import + #else + #import + #import + #endif +#endif diff --git a/Tests/AFNetworkingTests-Info.plist b/Tests/AFNetworkingTests-Info.plist new file mode 100644 index 0000000..28925ff --- /dev/null +++ b/Tests/AFNetworkingTests-Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + org.afnetworking.${PRODUCT_NAME:rfc1034identifier} + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1 + + diff --git a/Tests/AFNetworkingTests.h b/Tests/AFNetworkingTests.h new file mode 100644 index 0000000..05c11d3 --- /dev/null +++ b/Tests/AFNetworkingTests.h @@ -0,0 +1,17 @@ +// +// AFNetworkingTests.h +// AFNetworking +// +// Created by Blake Watters on 5/10/13. +// Copyright (c) 2013 AFNetworking. All rights reserved. +// + +#import +#import "AFNetworking.h" + +#define EXP_SHORTHAND YES +#import "Expecta.h" +#import "OCMock.h" + +extern NSString *AFNetworkingTestsBaseURLString; +NSURL *AFNetworkingTestsBaseURL(void); diff --git a/Tests/AFNetworkingTests.m b/Tests/AFNetworkingTests.m new file mode 100644 index 0000000..df81adb --- /dev/null +++ b/Tests/AFNetworkingTests.m @@ -0,0 +1,14 @@ +// +// AFNetworkingTests.m +// AFNetworking +// +// Created by Blake Watters on 5/10/13. +// Copyright (c) 2013 AFNetworking. All rights reserved. +// + +NSString *AFNetworkingTestsBaseURLString = @"http://httpbin.org/"; + +NSURL *AFNetworkingTestsBaseURL(void) +{ + return [NSURL URLWithString:AFNetworkingTestsBaseURLString]; +} diff --git a/Tests/Podfile b/Tests/Podfile new file mode 100644 index 0000000..6c587cd --- /dev/null +++ b/Tests/Podfile @@ -0,0 +1,20 @@ +xcodeproj 'AFNetworking Tests' +workspace '../AFNetworking' +inhibit_all_warnings! + +def import_pods + pod 'OCMock', '2.1.1' + pod 'Expecta', '0.2.1' +end + +target :ios do + platform :ios, '5.0' + link_with 'iOS Tests' + import_pods +end + +target :osx do + platform :osx, '10.7' + link_with 'OS X Tests' + import_pods +end diff --git a/Tests/Podfile.lock b/Tests/Podfile.lock new file mode 100644 index 0000000..e07e86a --- /dev/null +++ b/Tests/Podfile.lock @@ -0,0 +1,13 @@ +PODS: + - Expecta (0.2.1) + - OCMock (2.1.1) + +DEPENDENCIES: + - Expecta (= 0.2.1) + - OCMock (= 2.1.1) + +SPEC CHECKSUMS: + Expecta: d46fb1bd78c90a83da0158b9b1e108de106e369f + OCMock: 79212e5e328378af5cfd6edb5feacfd6c49cd8a3 + +COCOAPODS: 0.19.1