diff --git a/Tests/UnitTests/Mocks/MockHTTPClient.swift b/Tests/UnitTests/Mocks/MockHTTPClient.swift index ebed0b3509..342d5304a8 100644 --- a/Tests/UnitTests/Mocks/MockHTTPClient.swift +++ b/Tests/UnitTests/Mocks/MockHTTPClient.swift @@ -16,20 +16,27 @@ class MockHTTPClient: HTTPClient { struct Response { let response: HTTPResponse.Result + let delay: DispatchTimeInterval - private init(response: HTTPResponse.Result) { + private init(response: HTTPResponse.Result, delay: DispatchTimeInterval) { self.response = response + self.delay = delay } - init(statusCode: HTTPStatusCode, response: [String: Any] = [:]) { + init( + statusCode: HTTPStatusCode, + response: [String: Any] = [:], + delay: DispatchTimeInterval = .never + ) { // swiftlint:disable:next force_try let data = try! JSONSerialization.data(withJSONObject: response) - self.init(response: .success(.init(statusCode: statusCode, body: data))) + self.init(response: .success(.init(statusCode: statusCode, body: data)), + delay: delay) } - init(error: NetworkError) { - self.init(response: .failure(error)) + init(error: NetworkError, delay: DispatchTimeInterval = .never) { + self.init(response: .failure(error), delay: delay) } } @@ -71,9 +78,15 @@ class MockHTTPClient: HTTPClient { let mock = self.mocks[request.path] ?? .init(statusCode: .success) if let completionHandler = completionHandler { - completionHandler( - mock.response.parseResponse() - ) + let response: HTTPResponse.Result = mock.response.parseResponse() + + if mock.delay != .never { + DispatchQueue.main.asyncAfter(deadline: .now() + mock.delay) { + completionHandler(response) + } + } else { + completionHandler(response) + } } } } diff --git a/Tests/UnitTests/Networking/Backend/BackendGetOfferingsTests.swift b/Tests/UnitTests/Networking/Backend/BackendGetOfferingsTests.swift index 82cd82ee92..4448318b0d 100644 --- a/Tests/UnitTests/Networking/Backend/BackendGetOfferingsTests.swift +++ b/Tests/UnitTests/Networking/Backend/BackendGetOfferingsTests.swift @@ -60,7 +60,9 @@ class BackendGetOfferingsTests: BaseBackendTests { func testGetOfferingsCachesForSameUserID() { self.httpClient.mock( requestPath: .getOfferings(appUserID: Self.userID), - response: .init(statusCode: .success, response: Self.noOfferingsResponse as [String: Any]) + response: .init(statusCode: .success, + response: Self.noOfferingsResponse as [String: Any], + delay: .seconds(2)) ) self.offerings.getOfferings(appUserID: Self.userID, withRandomDelay: false) { _ in } self.offerings.getOfferings(appUserID: Self.userID, withRandomDelay: false) { _ in } @@ -73,7 +75,9 @@ class BackendGetOfferingsTests: BaseBackendTests { self.httpClient.mock( requestPath: .getOfferings(appUserID: Self.userID), - response: .init(statusCode: .success, response: Self.noOfferingsResponse as [String: Any]) + response: .init(statusCode: .success, + response: Self.noOfferingsResponse as [String: Any], + delay: .seconds(2)) ) self.offerings.getOfferings(appUserID: Self.userID, withRandomDelay: false) { _ in } self.offerings.getOfferings(appUserID: Self.userID, withRandomDelay: false) { _ in } diff --git a/Tests/UnitTests/Purchasing/Purchases/PurchasesConfiguringTests.swift b/Tests/UnitTests/Purchasing/Purchases/PurchasesConfiguringTests.swift index 8100103ed6..35f30a4dbf 100644 --- a/Tests/UnitTests/Purchasing/Purchases/PurchasesConfiguringTests.swift +++ b/Tests/UnitTests/Purchasing/Purchases/PurchasesConfiguringTests.swift @@ -209,17 +209,6 @@ class PurchasesConfiguringTests: BasePurchasesTests { expect(SystemInfo.serverHostURL) == defaultHostURL } - @available(*, deprecated) // Ignore deprecation warnings - func testSetDebugLogsEnabledSetsTheCorrectValue() { - Logger.logLevel = .warn - - Purchases.debugLogsEnabled = true - expect(Logger.logLevel) == .debug - - Purchases.debugLogsEnabled = false - expect(Logger.logLevel) == .info - } - func testIsAnonymous() { setupAnonPurchases() expect(self.purchases.isAnonymous).to(beTrue()) diff --git a/fastlane/Fastfile b/fastlane/Fastfile index f1ef792c05..834296c867 100644 --- a/fastlane/Fastfile +++ b/fastlane/Fastfile @@ -128,6 +128,7 @@ platform :ios do number_of_retries: 5, result_bundle: true, testplan: "CI-AllTests", + configuration: 'Debug', output_directory: "fastlane/test_output/xctest/ios" ) end @@ -144,6 +145,7 @@ platform :ios do number_of_retries: 5, result_bundle: true, testplan: "CI-AllTests", + configuration: 'Debug', output_directory: "fastlane/test_output/xctest/tvos" ) end @@ -342,6 +344,7 @@ platform :ios do number_of_retries: 3, result_bundle: true, testplan: "CI-BackendIntegration", + configuration: 'Debug', output_directory: "fastlane/test_output/xctest/ios" ) end