From 8ede89721f5a93d0a9d50ff99bb7ab7564d04ca1 Mon Sep 17 00:00:00 2001 From: Gustavo Meyer Date: Thu, 30 Jan 2025 12:35:32 -0500 Subject: [PATCH] DTPOMERSER-1389 Update OS to runner mac-15, install swiftlinter and address lint issues --- .github/workflows/ci.yml | 12 ++++++++---- Tests/AnyCodableTests.swift | 5 +++-- Tests/Helper/AuthenticationProviderMock.swift | 4 ++-- Tests/TransactionTypeTests.swift | 6 +++--- 4 files changed, 16 insertions(+), 11 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e731c9b2..34fba9ae 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -16,8 +16,8 @@ jobs: fail-fast: false matrix: include: - - os: macos-12 - xcode_version: 14.2 + - os: macos-15 + xcode_version: 16.2 fastlane_task: unit_tests runs-on: ${{ matrix.os }} @@ -47,8 +47,12 @@ jobs: - name: Run ${{ matrix.task_title }} run: fastlane ${{ matrix.fastlane_task }} - - name: Lint validation + - name: Install Lint run: + brew install swiftlint + + - name: Lint validation + run: swiftlint lint --strict --reporter json - name: Code Coverage [Build report] @@ -74,4 +78,4 @@ jobs: - name: Post to Coveralls uses: coverallsapp/github-action@master with: - github-token: ${{ secrets.GITHUB_TOKEN }} + github-token: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file diff --git a/Tests/AnyCodableTests.swift b/Tests/AnyCodableTests.swift index 40cbce11..b72e52f0 100644 --- a/Tests/AnyCodableTests.swift +++ b/Tests/AnyCodableTests.swift @@ -20,8 +20,9 @@ class AnyCodableTests: XCTestCase { // Then XCTAssertNotNil(jsonBody) - let jsonBodyString = String(decoding: jsonBody, as: UTF8.self) - XCTAssertTrue(((jsonBodyString.contains("USD")))) + let jsonBodyString = String(bytes: jsonBody, encoding: .utf8) + XCTAssertNotNil(jsonBodyString) + XCTAssertTrue(((jsonBodyString!.contains("USD")))) } func testDecode() { diff --git a/Tests/Helper/AuthenticationProviderMock.swift b/Tests/Helper/AuthenticationProviderMock.swift index 1c7281dd..ae6cece6 100644 --- a/Tests/Helper/AuthenticationProviderMock.swift +++ b/Tests/Helper/AuthenticationProviderMock.swift @@ -20,8 +20,8 @@ class AuthenticationProviderMock: HyperwalletAuthenticationTokenProvider { error = nil } - func retrieveAuthenticationToken(completionHandler authenticationTokenHandler: @escaping - AuthenticationProviderMock.CompletionHandler) { + func retrieveAuthenticationToken( + completionHandler authenticationTokenHandler: @escaping AuthenticationProviderMock.CompletionHandler) { hasRequestedClientToken = true authenticationTokenHandler(authorizationData, error) } diff --git a/Tests/TransactionTypeTests.swift b/Tests/TransactionTypeTests.swift index 80cd4579..737ecdbd 100644 --- a/Tests/TransactionTypeTests.swift +++ b/Tests/TransactionTypeTests.swift @@ -116,9 +116,9 @@ class TransactionTypeTests: XCTestCase { if httpMethod == .get { XCTAssertNil(urlRequest.httpBody, "The HTTP body should be nil") } else { - let httpBody = String(decoding: urlRequest.httpBody!, as: UTF8.self) + let httpBody = String(bytes: urlRequest.httpBody!, encoding: .utf8) let payloadData = try JSONEncoder().encode(payload) - let payloadString = String(decoding: payloadData, as: UTF8.self) + let payloadString = String(bytes: payloadData, encoding: .utf8) XCTAssertEqual(httpBody, payloadString, "The HTTP body should be equals to payload") } @@ -165,7 +165,7 @@ class TransactionTypeTests: XCTestCase { if httpMethod == .get { XCTAssertNil(urlRequest.httpBody, "The HTTP body should be nil") } else { - let query = String(decoding: urlRequest.httpBody!, as: UTF8.self) + let query = String(bytes: urlRequest.httpBody!, encoding: .utf8) let payloadString = payload.toGraphQl(userToken: configuration.userToken) XCTAssertEqual(query, payloadString, "The HTTP body should be equals to payload") }