-
-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathURLRequestTests+URL.swift
More file actions
44 lines (33 loc) · 1.67 KB
/
URLRequestTests+URL.swift
File metadata and controls
44 lines (33 loc) · 1.67 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
import Foundation
import XCTest
@testable import SimpleHTTPFoundation
#if canImport(FoundationNetworking)
import FoundationNetworking
#endif
class URLRequestURLTests: XCTestCase {
func test_relativeTo_requestURLHasBaseURL() {
let request = URLRequest(url: URL(string: "path")!)
let url = request.relativeTo(URL(string: "https://google.com")!).url
XCTAssertEqual(url?.absoluteString, "https://google.com/path")
}
func test_relativeTo_urlStartWithSlash_requestPathContainBothPaths() {
let request = URLRequest(url: URL(string: "/path")!)
let url = request.relativeTo(URL(string: "https://google.com/lostAndFound")!).url
XCTAssertEqual(url?.absoluteString, "https://google.com/lostAndFound/path")
}
func test_relativeTo_baseURLHasPath_requestContainBaseURLPath() {
let request = URLRequest(url: URL(string: "concatenated")!)
let url = request.relativeTo(URL(string: "https://google.com/firstPath")!).url
XCTAssertEqual(url?.absoluteString, "https://google.com/firstPath/concatenated")
}
func test_relativeTo_baseURLHasQuery_requestHasNoQuery() {
let request = URLRequest(url: URL(string: "concatenated")!)
let url = request.relativeTo(URL(string: "https://google.com?param=1")!).url
XCTAssertEqual(url?.absoluteString, "https://google.com/concatenated")
}
func test_relativeTo_urlHasQuery_requestHasQuery() {
let request = URLRequest(url: URL(string: "concatenated?toKeep=1")!)
let url = request.relativeTo(URL(string: "https://google.com?param=1")!).url
XCTAssertEqual(url?.absoluteString, "https://google.com/concatenated?toKeep=1")
}
}