InterviewSolution
Saved Bookmarks
| 1. |
What is the use of the dump function? Explain with example. |
|
Answer» Use DEPENDENCY injection to redesign the classes and provide data from test methods protocol IBookStorage { func fetchAllBooks()->[Book] } class BookStorage: IBookStorage { func fetchAllBooks() -> [Book] { // return all available books } } class BooksManager { let bookStorage:IBookStorage init(bookStorage:IBookStorage) { self.bookStorage = bookStorage } func physicsBooks() -> [Book] { let books = bookStorage.fetchAllBooks() // identify the physics book and return those let physicsbooks = … return physicsbooks } } class StubBookStorage: IBookStorage { VAR books = [Book]() init(books:[Book]) { self.books = books } func fetchAllBooks() -> [Book] { return books } } // Test methods func testBookManager() { let books = … // add stub data you want to test let bookStorage = StubBookStorage(books: books) let bookManager = BooksManager(bookStorage: bookStorage) let physicsBooks = bookManager.physicsBooks() // test the value physicsBooks array if CORRECT } |
|