1515import AWSLambdaEvents
1616import AWSLambdaRuntime
1717import AsyncHTTPClient
18+ import BreezeHTTPClientService
1819@testable import BreezeLambdaWebHookService
1920import XCTest
21+ import Logging
2022
2123final class BreezeLambdaWebHookTests : XCTestCase {
2224
2325 let decoder = JSONDecoder ( )
26+ let config = BreezeClientServiceConfig (
27+ httpClientService: BreezeHTTPClientService (
28+ timeout: . seconds( 1 ) ,
29+ logger: Logger ( label: " test " )
30+ )
31+ )
2432
2533 override func setUpWithError( ) throws {
2634 try super. setUpWithError ( )
2735 setEnvironmentVar ( name: " LOCAL_LAMBDA_SERVER_ENABLED " , value: " true " , overwrite: true )
28- LambdaInitializationContext . WebHook. timeout = 1
36+ // LambdaInitializationContext.WebHook.timeout = 1
2937 }
3038
3139 override func tearDownWithError( ) throws {
3240 unsetenv ( " LOCAL_LAMBDA_SERVER_ENABLED " )
3341 unsetenv ( " _HANDLER " )
34- LambdaInitializationContext . WebHook. timeout = 30
42+ // LambdaInitializationContext.WebHook.timeout = 30
3543 try super. tearDownWithError ( )
3644 }
3745
3846 func test_postWhenMissingBody_thenError( ) async throws {
3947 setEnvironmentVar ( name: " _HANDLER " , value: " build/webhook.get " , overwrite: true )
4048 let createRequest = try Fixtures . fixture ( name: Fixtures . getWebHook, type: " json " )
4149 let request = try decoder. decode ( APIGatewayV2Request . self, from: createRequest)
42- let apiResponse : APIGatewayV2Response = try await Lambda . test ( BreezeLambdaWebHook < MyPostWebHook> . self , with: request)
50+ let apiResponse : APIGatewayV2Response = try await Lambda . test ( MyPostWebHook . self, config : config , with: request)
4351 let response : APIGatewayV2Response . BodyError = try apiResponse. decodeBody ( )
4452 XCTAssertEqual ( apiResponse. statusCode, . badRequest)
4553 XCTAssertEqual ( apiResponse. headers, [ " Content-Type " : " application/json " ] )
@@ -50,7 +58,7 @@ final class BreezeLambdaWebHookTests: XCTestCase {
5058 setEnvironmentVar ( name: " _HANDLER " , value: " build/webhook.post " , overwrite: true )
5159 let createRequest = try Fixtures . fixture ( name: Fixtures . postWebHook, type: " json " )
5260 let request = try decoder. decode ( APIGatewayV2Request . self, from: createRequest)
53- let apiResponse : APIGatewayV2Response = try await Lambda . test ( BreezeLambdaWebHook < MyPostWebHook> . self , with: request)
61+ let apiResponse : APIGatewayV2Response = try await Lambda . test ( MyPostWebHook . self, config : config , with: request)
5462 let response : MyPostResponse = try apiResponse. decodeBody ( )
5563 XCTAssertEqual ( apiResponse. statusCode, . ok)
5664 XCTAssertEqual ( apiResponse. headers, [ " Content-Type " : " application/json " ] )
@@ -63,7 +71,7 @@ final class BreezeLambdaWebHookTests: XCTestCase {
6371 setEnvironmentVar ( name: " _HANDLER " , value: " build/webhook.get " , overwrite: true )
6472 let createRequest = try Fixtures . fixture ( name: Fixtures . postWebHook, type: " json " )
6573 let request = try decoder. decode ( APIGatewayV2Request . self, from: createRequest)
66- let apiResponse : APIGatewayV2Response = try await Lambda . test ( BreezeLambdaWebHook < MyGetWebHook> . self , with: request)
74+ let apiResponse : APIGatewayV2Response = try await Lambda . test ( MyGetWebHook . self, config : config , with: request)
6775 let response : APIGatewayV2Response . BodyError = try apiResponse. decodeBody ( )
6876 XCTAssertEqual ( apiResponse. statusCode, . badRequest)
6977 XCTAssertEqual ( apiResponse. headers, [ " Content-Type " : " application/json " ] )
@@ -74,7 +82,7 @@ final class BreezeLambdaWebHookTests: XCTestCase {
7482 setEnvironmentVar ( name: " _HANDLER " , value: " build/webhook.post " , overwrite: true )
7583 let createRequest = try Fixtures . fixture ( name: Fixtures . getWebHook, type: " json " )
7684 let request = try decoder. decode ( APIGatewayV2Request . self, from: createRequest)
77- let apiResponse : APIGatewayV2Response = try await Lambda . test ( BreezeLambdaWebHook < MyGetWebHook> . self , with: request)
85+ let apiResponse : APIGatewayV2Response = try await Lambda . test ( MyGetWebHook . self, config : config , with: request)
7886 let response : [ String : String ] = try apiResponse. decodeBody ( )
7987 XCTAssertEqual ( apiResponse. statusCode, . ok)
8088 XCTAssertEqual ( apiResponse. headers, [ " Content-Type " : " application/json " ] )
0 commit comments