         
         describe("HTTP body matcher") {
             it("should match the correct HTTP body") {
+                let method: HTTPMethod = .GET
                 let url = "https://example.com/api"
+                let body: [String: AnyObject] = [ "key": "value" ]
+                
                 let request = NSMutableURLRequest(URL: NSURL(string: url)!)
-                let body: [String: AnyObject] = [ "key": "value" ]
-                let matcher = api(.GET, url, body: body)
+                request.HTTPMethod = method.description
+                
+                let matcher = api(method, url, body: body)
                 
                 setHTTPHeadersForRequest(request)
                 expect(matcher(request: request)).to(equal(false))

    override func spec() {
        describe("HTTP header matcher") {
            it("should match the correct HTTP headers") {
                let url = "https://example.com/api"
                let request = NSMutableURLRequest(URL: NSURL(string: url)!)
                let matcher = api(.GET, url)
                
                expect(matcher(request: request)).to(equal(false))
                

import Quick

private func setHTTPHeadersForRequest(request: NSMutableURLRequest) {
    request.setValue("application/json", forHTTPHeaderField: "Accept")
    request.setValue("application/json", forHTTPHeaderField: "Content-Type")
    request.setValue("gzip;q=1.0,compress;q=0.5", forHTTPHeaderField: "Accept-Encoding")
