Exercise 2: FakeQuoteFetcher for a Real, Working Preview — Possible Solution =================================================================================== struct FakeQuoteFetcher: QuoteFetching { func fetchQuote() async throws -> Quote { Quote(text: "The only way to do great work is to love what you do.", author: "Sample Author") } } #Preview { QuoteHeaderView(quoteFetcher: FakeQuoteFetcher()) } HOW IT WORKS: FakeQuoteFetcher conforms to the exact same real QuoteFetching protocol Exercise 1's own QuoteHeaderView depends on - it's a fully legitimate, real substitute from the type system's own point of view, even though its fetchQuote() implementation returns a fixed, hardcoded Quote value instantly rather than performing any real network request. Because it's still marked async and matches the protocol's own exact signature, it can be awaited exactly like the real QuoteService, even though no real suspension or network I/O actually occurs inside it. Passing FakeQuoteFetcher() into QuoteHeaderView's own initializer inside the #Preview block means Xcode's own real preview canvas can render the view's fully-loaded state (the quote text and author shown directly, skipping the ProgressView state) immediately and consistently, every single time the preview refreshes - with zero real dependency on network availability, server response time, or any actual internet connection while working inside Xcode. ANSWER: FakeQuoteFetcher conforms to QuoteFetching and returns a fixed Quote instantly with no real network call, and passing it into QuoteHeaderView(quoteFetcher: FakeQuoteFetcher()) inside a #Preview block correctly gives Xcode's own preview canvas real, immediate, predictable sample data to render, exactly as the chapter's own FakeAPIClient example demonstrated for TaskListViewModel. WHY THIS WORKS AS AN ANSWER ------------------------------ This correctly implements a real fake conforming to the protocol and uses it inside a #Preview exactly as the chapter's own established pattern demonstrated, giving a concrete, working example of the real preview benefit the chapter described.