From e2b61fc1dbb7042d73975b79e50eb930081bc9d0 Mon Sep 17 00:00:00 2001 From: Paul Fleiner Date: Wed, 12 Aug 2020 14:21:25 -0400 Subject: [PATCH] Add app id to url for pending tasks --- Source/Client.swift | 6 ++++++ Tests/UnitTests/ClientTests.swift | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Source/Client.swift b/Source/Client.swift index 8a2d018..bfa1789 100644 --- a/Source/Client.swift +++ b/Source/Client.swift @@ -148,6 +148,12 @@ internal final class Client: ClientType { } if let appId = applicationId { parameters["application_id"] = appId.rawValue + let appFormat = String(format: "https://%@.mobileapi", appId.rawValue) + let urlString = urlRequest.url?.absoluteString.replacingOccurrences(of: "https://mobileapi", with: appFormat) + if let urlString = urlString, + let url = URL(string: urlString) { + urlRequest.url = url + } } urlRequest.httpBody = try? JSONSerialization.data(withJSONObject: parameters) enqueueRequest(request: urlRequest, completion: pendingTask.completion) diff --git a/Tests/UnitTests/ClientTests.swift b/Tests/UnitTests/ClientTests.swift index 125d572..e367af9 100644 --- a/Tests/UnitTests/ClientTests.swift +++ b/Tests/UnitTests/ClientTests.swift @@ -700,9 +700,9 @@ class ClientTests: XCTestCase { // Assert XCTAssertEqual(testURLSession.allDataTasks.count, 2) XCTAssertEqual(testURLSession.allDataTasks[0].originalRequest?.url?.absoluteString, - "https://mobileapi.usebutton.com/v1/app/deferred-deeplink") + "https://app-test.mobileapi.usebutton.com/v1/app/deferred-deeplink") XCTAssertEqual(testURLSession.allDataTasks[1].originalRequest?.url?.absoluteString, - "https://mobileapi.usebutton.com/v1/app/events") + "https://app-test.mobileapi.usebutton.com/v1/app/events") XCTAssertEqual(client.pendingTasks.count, 0) testURLSession.allDataTasks.forEach { task in let json = try? JSONSerialization.jsonObject(with: task.originalRequest!.httpBody!) as? NSDictionary