Skip to content

Commit

Permalink
REFACTOR: Migrate Authentication tests to Swift Testing
Browse files Browse the repository at this point in the history
  • Loading branch information
adamayoung committed Sep 16, 2024
1 parent f553fb5 commit b8039b5
Show file tree
Hide file tree
Showing 16 changed files with 226 additions and 257 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ struct AccountRequestTests {
self.request = AccountRequest(sessionID: "1234567890")
}

@Test("path")
@Test("path is correct")
func path() {
#expect(request.path == "/account")
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ import Testing
@Suite(.tags(.requests, .account))
struct AddFavouriteRequestTests {

@Test("path")
@Test("path is correct")
func path() {
let request = AddFavouriteRequest(
showType: .movie,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ import Testing
@Suite(.tags(.requests, .account))
struct AddToWatchlistRequestTests {

@Test("path")
@Test("path is correct")
func path() {
let request = AddToWatchlistRequest(
showType: .movie,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ import Testing
@Suite(.tags(.requests, .account))
struct FavouriteMoviesRequestTests {

@Test("path")
@Test("path is correct")
func path() {
let request = FavouriteMoviesRequest(accountID: 1, sessionID: "abc")

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ import Testing
@Suite(.tags(.requests, .account))
struct FavouriteTVSeriesRequestTests {

@Test("path")
@Test("path is correct")
func path() {
let request = FavouriteTVSeriesRequest(accountID: 1, sessionID: "abc")

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ import Testing
@Suite(.tags(.requests, .account))
struct MovieWatchlistRequestTests {

@Test("path")
@Test("path is correct")
func path() {
let request = MovieWatchlistRequest(accountID: 1, sessionID: "abc")

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ import Testing
@Suite(.tags(.requests, .account))
struct TVSeriesWatchlistRequestTests {

@Test("path")
@Test("path is correct")
func path() {
let request = TVSeriesWatchlistRequest(accountID: 1, sessionID: "abc")

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,41 +17,42 @@
// limitations under the License.
//

import Foundation
import Testing
@testable import TMDb
import XCTest

final class CreateGuestSessionRequestTests: XCTestCase {
@Suite(.tags(.requests, .authentication))
struct CreateGuestSessionRequestTests {

var request: CreateGuestSessionRequest!

override func setUp() {
super.setUp()
request = CreateGuestSessionRequest()
init() {
self.request = CreateGuestSessionRequest()
}

override func tearDown() {
request = nil
super.tearDown()
@Test("path is correct")
func path() {
#expect(request.path == "/authentication/guest_session/new")
}

func testPath() {
XCTAssertEqual(request.path, "/authentication/guest_session/new")
@Test("queryItems is empty")
func queryItemsAreEmpty() {
#expect(request.queryItems.isEmpty)
}

func testQueryItemsAreEmpty() {
XCTAssertTrue(request.queryItems.isEmpty)
@Test("method is GET")
func methodIsGet() {
#expect(request.method == .get)
}

func testMethodIsGet() {
XCTAssertEqual(request.method, .get)
@Test("headers is empty")
func headersIsEmpty() {
#expect(request.headers.isEmpty)
}

func testHeadersIsEmpty() {
XCTAssertTrue(request.headers.isEmpty)
}

func testBodyIsNil() {
XCTAssertNil(request.body)
@Test("body is nil")
func bodyIsNil() {
#expect(request.body == nil)
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -17,41 +17,42 @@
// limitations under the License.
//

import Foundation
import Testing
@testable import TMDb
import XCTest

final class CreateRequestTokenRequestTests: XCTestCase {
@Suite(.tags(.requests, .authentication))
struct CreateRequestTokenRequestTests {

var request: CreateRequestTokenRequest!

override func setUp() {
super.setUp()
request = CreateRequestTokenRequest()
init() {
self.request = CreateRequestTokenRequest()
}

override func tearDown() {
request = nil
super.tearDown()
@Test("path is correct")
func path() {
#expect(request.path == "/authentication/token/new")
}

func testPath() {
XCTAssertEqual(request.path, "/authentication/token/new")
@Test("queryItems is empty")
func queryItemsAreEmpty() {
#expect(request.queryItems.isEmpty)
}

func testQueryItemsAreEmpty() {
XCTAssertTrue(request.queryItems.isEmpty)
@Test("method is GET")
func methodIsGet() {
#expect(request.method == .get)
}

func testMethodIsGet() {
XCTAssertEqual(request.method, .get)
@Test("headers is empty")
func headersIsEmpty() {
#expect(request.headers.isEmpty)
}

func testHeadersIsEmpty() {
XCTAssertTrue(request.headers.isEmpty)
}

func testBodyIsNil() {
XCTAssertNil(request.body)
@Test("body is nil")
func bodyIsNil() {
#expect(request.body == nil)
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -17,43 +17,44 @@
// limitations under the License.
//

import Foundation
import Testing
@testable import TMDb
import XCTest

final class CreateSessionRequestTests: XCTestCase {
@Suite(.tags(.requests, .authentication))
struct CreateSessionRequestTests {

var request: CreateSessionRequest!

override func setUp() {
super.setUp()
request = CreateSessionRequest(requestToken: "ABC123")
init() {
self.request = CreateSessionRequest(requestToken: "ABC123")
}

override func tearDown() {
request = nil
super.tearDown()
@Test("path is correct")
func path() {
#expect(request.path == "/authentication/session/new")
}

func testPath() {
XCTAssertEqual(request.path, "/authentication/session/new")
@Test("queryItems is empty")
func queryItemsIsEmpty() {
#expect(request.queryItems.isEmpty)
}

func testQueryItemsIsEmpty() {
XCTAssertTrue(request.queryItems.isEmpty)
@Test("method is POST")
func methodIsPost() {
#expect(request.method == .post)
}

func testMethodIsPost() {
XCTAssertEqual(request.method, .post)
@Test("headers is empty")
func headersIsEmpty() {
#expect(request.headers.isEmpty)
}

func testHeadersIsEmpty() {
XCTAssertTrue(request.headers.isEmpty)
}

func testBodyWhenMovieAndAddingAsFavourite() throws {
let body = try XCTUnwrap(request.body)
@Test("body contains requestToken")
func bodyContainsRequestToken() throws {
let body = try #require(request.body)

XCTAssertEqual(body.requestToken, "ABC123")
#expect(body.requestToken == "ABC123")
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -17,43 +17,44 @@
// limitations under the License.
//

import Foundation
import Testing
@testable import TMDb
import XCTest

final class DeleteSessionRequestTests: XCTestCase {
@Suite(.tags(.requests, .authentication))
struct DeleteSessionRequestTests {

var request: DeleteSessionRequest!

override func setUp() {
super.setUp()
request = DeleteSessionRequest(sessionID: "qwerty")
init() {
self.request = DeleteSessionRequest(sessionID: "qwerty")
}

override func tearDown() {
request = nil
super.tearDown()
@Test("path is correct")
func path() {
#expect(request.path == "/authentication/session")
}

func testPath() {
XCTAssertEqual(request.path, "/authentication/session")
@Test("queryItems is empty")
func queryItemsIsEmpty() {
#expect(request.queryItems.isEmpty)
}

func testQueryItemsIsEmpty() {
XCTAssertTrue(request.queryItems.isEmpty)
@Test("method is POST")
func methodIsPost() {
#expect(request.method == .delete)
}

func testMethodIsPost() {
XCTAssertEqual(request.method, .delete)
@Test("headers is empty")
func headersIsEmpty() {
#expect(request.headers.isEmpty)
}

func testHeadersIsEmpty() {
XCTAssertTrue(request.headers.isEmpty)
}

func testBodyWhenMovieAndAddingAsFavourite() throws {
let body = try XCTUnwrap(request.body)
@Test("body contains sessionID")
func bodyContainsSessionID() throws {
let body = try #require(request.body)

XCTAssertEqual(body.sessionID, "qwerty")
#expect(body.sessionID == "qwerty")
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -17,41 +17,42 @@
// limitations under the License.
//

import Foundation
import Testing
@testable import TMDb
import XCTest

final class ValidateKeyRequestTests: XCTestCase {
@Suite(.tags(.requests, .authentication))
struct ValidateKeyRequestTests {

var request: ValidateKeyRequest!

override func setUp() {
super.setUp()
request = ValidateKeyRequest()
init() {
self.request = ValidateKeyRequest()
}

override func tearDown() {
request = nil
super.tearDown()
@Test("path is correct")
func path() {
#expect(request.path == "/authentication")
}

func testPath() {
XCTAssertEqual(request.path, "/authentication")
@Test("queryItem is empty")
func queryItemsAreEmpty() {
#expect(request.queryItems.isEmpty)
}

func testQueryItemsAreEmpty() {
XCTAssertTrue(request.queryItems.isEmpty)
@Test("method is GET")
func methodIsGet() {
#expect(request.method == .get)
}

func testMethodIsGet() {
XCTAssertEqual(request.method, .get)
@Test("headers is empty")
func headersIsEmpty() {
#expect(request.headers.isEmpty)
}

func testHeadersIsEmpty() {
XCTAssertTrue(request.headers.isEmpty)
}

func testBodyIsNil() {
XCTAssertNil(request.body)
@Test("body is nil")
func bodyIsNil() {
#expect(request.body == nil)
}

}
Loading

0 comments on commit b8039b5

Please sign in to comment.