Skip to content

Commit 45e1bd8

Browse files
committed
NSMutableURLRequest tests
1 parent f876e47 commit 45e1bd8

File tree

2 files changed

+35
-2
lines changed

2 files changed

+35
-2
lines changed

Foundation/NSURLRequest.swift

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -328,7 +328,6 @@ public class NSMutableURLRequest : NSURLRequest {
328328
_URL = URL
329329
}
330330

331-
332331
/*!
333332
@method URL
334333
@abstract Sets the URL of the receiver.

TestFoundation/TestNSURLRequest.swift

Lines changed: 35 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,14 @@ class TestNSURLRequest : XCTestCase {
2121
var allTests : [(String, () -> ())] {
2222
return [
2323
("test_construction", test_construction),
24+
("test_mutableConstruction", test_mutableConstruction),
25+
("test_headerFields", test_headerFields)
2426
]
2527
}
2628

29+
let URL = NSURL(string: "http://swift.org")!
30+
2731
func test_construction() {
28-
let URL = NSURL(string: "http://swift.org")!
2932
let request = NSURLRequest(URL: URL)
3033
// Match OS X Foundation responses
3134
XCTAssertNotNil(request)
@@ -34,4 +37,35 @@ class TestNSURLRequest : XCTestCase {
3437
XCTAssertNil(request.allHTTPHeaderFields)
3538
XCTAssertNil(request.mainDocumentURL)
3639
}
40+
41+
func test_mutableConstruction() {
42+
let URL = NSURL(string: "http://swift.org")!
43+
let request = NSMutableURLRequest(URL: URL)
44+
//Confirm initial state matches NSURLRequest responses
45+
XCTAssertNotNil(request)
46+
XCTAssertEqual(request.URL, URL)
47+
XCTAssertEqual(request.HTTPMethod, "GET")
48+
XCTAssertNil(request.allHTTPHeaderFields)
49+
XCTAssertNil(request.mainDocumentURL)
50+
51+
request.mainDocumentURL = URL
52+
XCTAssertEqual(request.mainDocumentURL, URL)
53+
54+
request.HTTPMethod = "POST"
55+
XCTAssertEqual(request.HTTPMethod, "POST")
56+
57+
let newURL = NSURL(string: "http://github.com")!
58+
request.URL = newURL
59+
XCTAssertEqual(request.URL, newURL)
60+
}
61+
62+
func test_headerFields() {
63+
let request = NSMutableURLRequest(URL: URL)
64+
request.setValue("application/json", forHTTPHeaderField: "accept")
65+
XCTAssertNotNil(request.allHTTPHeaderFields)
66+
XCTAssertEqual(request.allHTTPHeaderFields?["accept"], "application/json")
67+
//HTTP Header fields should be case insensitive
68+
request.addValue("text/html", forHTTPHeaderField: "Accept")
69+
XCTAssertEqual(request.allHTTPHeaderFields?["accept"], "application/json,text/html")
70+
}
3771
}

0 commit comments

Comments
 (0)