Skip to content

Instantly share code, notes, and snippets.

@tieleman
Last active August 4, 2020 09:31
Show Gist options
  • Save tieleman/f260347fb596caaaeb626286e0e4f548 to your computer and use it in GitHub Desktop.
Save tieleman/f260347fb596caaaeb626286e0e4f548 to your computer and use it in GitHub Desktop.
class FakeAuthorService: AuthorServiceProtocol {
func fetchAllAuthors() -> [Author] {
[
Author(firstName: "Frank", lastName: "Herbert", booksWritten: 27),
Author(firstName: "Roald", lastName: "Dahl", booksWritten: 19),
Author(firstName: "Haruki", lastName: "Marukami", booksWritten: 14)
]
}
}
class AuthorViewModelTests: XCTestCase {
func testFetchAllAuthors() throws {
let viewModel = AuthorViewModel(service: FakeAuthorService())
let authors = viewModel.allAuthors()
XCTAssertEqual(authors.count, 3)
XCTAssertEqual(authors.first!.firstName, "Frank")
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment