diff options
Diffstat (limited to 'test/ios/OHHTTPStubs/OHHTTPStubs/Sources/Swift/OHHTTPStubsSwift.swift')
-rw-r--r-- | test/ios/OHHTTPStubs/OHHTTPStubs/Sources/Swift/OHHTTPStubsSwift.swift | 179 |
1 files changed, 0 insertions, 179 deletions
diff --git a/test/ios/OHHTTPStubs/OHHTTPStubs/Sources/Swift/OHHTTPStubsSwift.swift b/test/ios/OHHTTPStubs/OHHTTPStubs/Sources/Swift/OHHTTPStubsSwift.swift deleted file mode 100644 index 5229dcb808..0000000000 --- a/test/ios/OHHTTPStubs/OHHTTPStubs/Sources/Swift/OHHTTPStubsSwift.swift +++ /dev/null @@ -1,179 +0,0 @@ -/*********************************************************************************** -* -* Copyright (c) 2012 Olivier Halligon -* -* 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. -* -***********************************************************************************/ - -/** - * Swift Helpers - */ - - - -// MARK: Syntaxic Sugar for OHHTTPStubs - -/** - * Helper to return a `OHHTTPStubsResponse` given a fixture path, status code and optional headers. - * - * - Parameter filePath: the path of the file fixture to use for the response - * - Parameter status: the status code to use for the response - * - Parameter headers: the HTTP headers to use for the response - * - * - Returns: The `OHHTTPStubsResponse` instance that will stub with the given status code - * & headers, and use the file content as the response body. - */ -public func fixture(filePath: String, status: Int32 = 200, headers: [NSObject: AnyObject]?) -> OHHTTPStubsResponse { - return OHHTTPStubsResponse(fileAtPath: filePath, statusCode: status, headers: headers) -} - -/** - * Helper to call the stubbing function in a more concise way? - * - * - Parameter condition: the matcher block that determine if the request will be stubbed - * - Parameter response: the stub reponse to use if the request is stubbed - * - * - Returns: The opaque `OHHTTPStubsDescriptor` that uniquely identifies the stub - * and can be later used to remove it with `removeStub:` - */ -public func stub(condition: OHHTTPStubsTestBlock, response: OHHTTPStubsResponseBlock) -> OHHTTPStubsDescriptor { - return OHHTTPStubs.stubRequestsPassingTest(condition, withStubResponse: response) -} - - - -// MARK: Create OHHTTPStubsTestBlock matchers - -/** - * Matcher for testing an `NSURLRequest`'s **scheme**. - * - * - Parameter scheme: The scheme to match - * - * - Returns: a matcher (OHHTTPStubsTestBlock) that succeeds only if the request - * has the given scheme - */ -public func isScheme(scheme: String) -> OHHTTPStubsTestBlock { - return { req in req.URL?.scheme == scheme } -} - -/** - * Matcher for testing an `NSURLRequest`'s **host**. - * - * - Parameter host: The host to match - * - * - Returns: a matcher (OHHTTPStubsTestBlock) that succeeds only if the request - * has the given host - */ -public func isHost(host: String) -> OHHTTPStubsTestBlock { - return { req in req.URL?.host == host } -} - -/** - * Matcher for testing an `NSURLRequest`'s **path**. - * - * - Parameter path: The path to match - * - * - Returns: a matcher (OHHTTPStubsTestBlock) that succeeds only if the request - * has exactly the given path - * - * - Note: URL paths are usually absolute and thus starts with a '/' (which you - * should include in the `path` parameter unless you're testing relative URLs) - */ -public func isPath(path: String) -> OHHTTPStubsTestBlock { - return { req in req.URL?.path == path } -} - -/** - * Matcher for testing an `NSURLRequest`'s **path extension**. - * - * - Parameter ext: The file extension to match (without the dot) - * - * - Returns: a matcher (OHHTTPStubsTestBlock) that succeeds only if the request path - * ends with the given extension - */ -public func isExtension(ext: String) -> OHHTTPStubsTestBlock { - return { req in req.URL?.pathExtension == ext } -} - -/** - * Matcher for testing an `NSURLRequest`'s **query parameters**. - * - * - Parameter params: The dictionary of query parameters to check the presence for - * - * - Returns: a matcher (OHHTTPStubsTestBlock) that succeeds if the request contains - * the given query parameters with the given value. - * - * - Note: There is a difference between: - * (1) using `[q:""]`, which matches a query parameter "?q=" with an empty value, and - * (2) using `[q:nil]`, which matches a query parameter "?q" without a value at all - */ -public func containsQueryParams(params: [String:String?]) -> OHHTTPStubsTestBlock { - return { req in - if let url = req.URL { - let comps = NSURLComponents(URL: url, resolvingAgainstBaseURL: true) - if let queryItems = comps?.queryItems { - for (k,v) in params { - if queryItems.filter({ qi in qi.name == k && qi.value == v }).count == 0 { return false } - } - return true - } - } - return false - } -} - - - -// MARK: Operators on OHHTTPStubsTestBlock - -/** - * Combine different `OHHTTPStubsTestBlock` matchers with an 'OR' operation. - * - * - Parameter lhs: the first matcher to test - * - Parameter rhs: the second matcher to test - * - * - Returns: a matcher (`OHHTTPStubsTestBlock`) that succeeds if either of the given matchers succeeds - */ -public func || (lhs: OHHTTPStubsTestBlock, rhs: OHHTTPStubsTestBlock) -> OHHTTPStubsTestBlock { - return { req in lhs(req) || rhs(req) } -} - -/** - * Combine different `OHHTTPStubsTestBlock` matchers with an 'AND' operation. - * - * - Parameter lhs: the first matcher to test - * - Parameter rhs: the second matcher to test - * - * - Returns: a matcher (`OHHTTPStubsTestBlock`) that only succeeds if both of the given matchers succeeds - */ -public func && (lhs: OHHTTPStubsTestBlock, rhs: OHHTTPStubsTestBlock) -> OHHTTPStubsTestBlock { - return { req in lhs(req) && rhs(req) } -} - -/** - * Create the opposite of a given `OHHTTPStubsTestBlock` matcher. - * - * - Parameter expr: the matcher to negate - * - * - Returns: a matcher (OHHTTPStubsTestBlock) that only succeeds if the expr matcher fails - */ -public prefix func ! (expr: OHHTTPStubsTestBlock) -> OHHTTPStubsTestBlock { - return { req in !expr(req) } -} |