@@ -13,56 +13,24 @@ import Amplify
13
13
14
14
class CognitoAuthInterceptorTests : XCTestCase {
15
15
16
- func testInterceptConnection_withAuthTokenProvider_appendCorrectAuthHeaderToQuery ( ) async {
16
+ func testInterceptConnection_withAuthTokenProvider_appendCorrectAuthHeader ( ) async {
17
17
let authTokenProvider = MockAuthTokenProvider ( )
18
18
let interceptor = AuthTokenInterceptor ( authTokenProvider: authTokenProvider)
19
19
20
- let decoratedURL = await interceptor. interceptConnection ( url: URL ( string: " https://example.com " ) !)
21
- guard let components = URLComponents ( url: decoratedURL, resolvingAgainstBaseURL: false ) else {
22
- XCTFail ( " Failed to get url components from decorated URL " )
23
- return
24
- }
20
+ let decoratedURLRequest = await interceptor. interceptConnection ( request: URLRequest ( url: URL ( string: " https://example.com " ) !) )
25
21
26
- guard let queryHeaderString =
27
- try ? components. queryItems? . first ( where: { $0. name == " header " } ) ? . value? . base64DecodedString ( )
28
- else {
29
- XCTFail ( " Failed to extract header field from query string " )
30
- return
31
- }
32
-
33
- guard let queryHeader = try ? JSONDecoder ( ) . decode ( JSONValue . self, from: queryHeaderString. data ( using: . utf8) !)
34
- else {
35
- XCTFail ( " Failed to decode query header to json object " )
36
- return
37
- }
38
- XCTAssertEqual ( authTokenProvider. authToken, queryHeader. Authorization? . stringValue)
39
- XCTAssertEqual ( " example.com " , queryHeader. host? . stringValue)
22
+ XCTAssertEqual ( authTokenProvider. authToken, decoratedURLRequest. value ( forHTTPHeaderField: " Authorization " ) )
23
+ XCTAssertEqual ( " example.com " , decoratedURLRequest. value ( forHTTPHeaderField: " host " ) )
40
24
}
41
25
42
- func testInterceptConnection_withAuthTokenProviderFailed_appendEmptyAuthHeaderToQuery ( ) async {
26
+ func testInterceptConnection_withAuthTokenProviderFailed_appendEmptyAuthHeader ( ) async {
43
27
let authTokenProvider = MockAuthTokenProviderFailed ( )
44
28
let interceptor = AuthTokenInterceptor ( authTokenProvider: authTokenProvider)
45
29
46
- let decoratedURL = await interceptor. interceptConnection ( url: URL ( string: " https://example.com " ) !)
47
- guard let components = URLComponents ( url: decoratedURL, resolvingAgainstBaseURL: false ) else {
48
- XCTFail ( " Failed to get url components from decorated URL " )
49
- return
50
- }
30
+ let decoratedURLRequest = await interceptor. interceptConnection ( request: URLRequest ( url: URL ( string: " https://example.com " ) !) )
51
31
52
- guard let queryHeaderString =
53
- try ? components. queryItems? . first ( where: { $0. name == " header " } ) ? . value? . base64DecodedString ( )
54
- else {
55
- XCTFail ( " Failed to extract header field from query string " )
56
- return
57
- }
58
-
59
- guard let queryHeader = try ? JSONDecoder ( ) . decode ( JSONValue . self, from: queryHeaderString. data ( using: . utf8) !)
60
- else {
61
- XCTFail ( " Failed to decode query header to json object " )
62
- return
63
- }
64
- XCTAssertEqual ( " " , queryHeader. Authorization? . stringValue)
65
- XCTAssertEqual ( " example.com " , queryHeader. host? . stringValue)
32
+ XCTAssertEqual ( " " , decoratedURLRequest. value ( forHTTPHeaderField: " Authorization " ) )
33
+ XCTAssertEqual ( " example.com " , decoratedURLRequest. value ( forHTTPHeaderField: " host " ) )
66
34
}
67
35
68
36
func testInterceptRequest_withAuthTokenProvider_appendCorrectAuthInfoToPayload( ) async {
0 commit comments