├── .DS_Store ├── .gitignore ├── CleanArchitecture.png ├── LICENSE ├── Library.xcodeproj ├── project.pbxproj └── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ └── IDEWorkspaceChecks.plist ├── Library ├── AppDelegate.swift ├── Assets.xcassets │ └── AppIcon.appiconset │ │ └── Contents.json ├── Base.lproj │ ├── LaunchScreen.storyboard │ └── Main.storyboard ├── Core │ ├── Entities │ │ └── Book.swift │ ├── Gateways │ │ └── BooksGateway.swift │ ├── Result.swift │ └── UseCases │ │ ├── AddBook.swift │ │ ├── DeleteBook.swift │ │ └── DisplayBooksList.swift ├── EntityGateway │ ├── API │ │ ├── ApiClient.swift │ │ ├── ApiResponse.swift │ │ ├── Entities │ │ │ └── ApiBook.swift │ │ ├── Gateways │ │ │ └── ApiBooksGateway.swift │ │ ├── JSON.swift │ │ └── Requests │ │ │ ├── AddBookApiRequest.swift │ │ │ ├── BooksApiRequest.swift │ │ │ └── DeleteBookApiRequest.swift │ ├── Cache │ │ └── CacheBooksGateway.swift │ └── LocalPersistence │ │ ├── CoreDataStack.swift │ │ ├── Entities │ │ └── CoreDataBook.swift │ │ ├── Gateways │ │ └── LocalPersistenceBooksGateway.swift │ │ ├── Library.xcdatamodeld │ │ ├── .xccurrentversion │ │ └── Library.xcdatamodel │ │ │ └── contents │ │ └── NSManagedObjectContext-Utils.swift ├── Info.plist ├── Other │ ├── Date-RelativeDescription.swift │ ├── UITextField-EmptyText.swift │ ├── UIViewController-Alert.swift │ └── ViewRouter.swift └── Scenes │ ├── AddBook │ ├── AddBookConfigurator.swift │ ├── AddBookPresenter.swift │ ├── AddBookViewController.swift │ └── AddBookViewRouter.swift │ ├── BookDetails │ ├── BookDetailsConfigurator.swift │ ├── BookDetailsPresenter.swift │ ├── BookDetailsTableViewController.swift │ └── BookDetailsViewRouter.swift │ └── Books │ ├── BookTableViewCell.swift │ ├── BooksConfigurator.swift │ ├── BooksPresenter.swift │ ├── BooksTableViewController.swift │ └── BooksViewRouter.swift ├── LibraryTests ├── Gateways │ ├── ApiClientTest.swift │ ├── CacheBooksGatewayTest.swift │ └── CoreDataBooksGatewayTest.swift ├── Helpers │ ├── Creators │ │ ├── AddBookParameters.swift │ │ ├── Book.swift │ │ └── NSError.swift │ ├── Gateways │ │ ├── ApiBooksGatewaySpy.swift │ │ ├── BooksGatewaySpy.swift │ │ └── LocalPersistenceBooksGatewaySpy.swift │ ├── InMemoryCoreDataStack.swift │ ├── NSManagedObjectContextSpy.swift │ ├── Presenters │ │ └── AddBookPresenterStub.swift │ ├── Routers │ │ ├── AddBookViewRouterSpy.swift │ │ └── BooksViewRouterSpy.swift │ ├── URLSessionStub.swift │ ├── UseCases │ │ ├── DeleteBookUseCaseSpy.swift │ │ └── DisplayBooksUseCaseStub.swift │ └── Views │ │ ├── BookCellViewSpy.swift │ │ └── BooksViewSpy.swift ├── Info.plist ├── Presenters │ └── BooksPresenterTest.swift ├── Result.swift └── UseCases │ └── DeleteBookUseCaseTest.swift └── readme.md /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/.DS_Store -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/.gitignore -------------------------------------------------------------------------------- /CleanArchitecture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/CleanArchitecture.png -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LICENSE -------------------------------------------------------------------------------- /Library.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /Library.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Library.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /Library/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/AppDelegate.swift -------------------------------------------------------------------------------- /Library/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /Library/Base.lproj/LaunchScreen.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Base.lproj/LaunchScreen.storyboard -------------------------------------------------------------------------------- /Library/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Base.lproj/Main.storyboard -------------------------------------------------------------------------------- /Library/Core/Entities/Book.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Core/Entities/Book.swift -------------------------------------------------------------------------------- /Library/Core/Gateways/BooksGateway.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Core/Gateways/BooksGateway.swift -------------------------------------------------------------------------------- /Library/Core/Result.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Core/Result.swift -------------------------------------------------------------------------------- /Library/Core/UseCases/AddBook.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Core/UseCases/AddBook.swift -------------------------------------------------------------------------------- /Library/Core/UseCases/DeleteBook.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Core/UseCases/DeleteBook.swift -------------------------------------------------------------------------------- /Library/Core/UseCases/DisplayBooksList.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Core/UseCases/DisplayBooksList.swift -------------------------------------------------------------------------------- /Library/EntityGateway/API/ApiClient.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/EntityGateway/API/ApiClient.swift -------------------------------------------------------------------------------- /Library/EntityGateway/API/ApiResponse.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/EntityGateway/API/ApiResponse.swift -------------------------------------------------------------------------------- /Library/EntityGateway/API/Entities/ApiBook.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/EntityGateway/API/Entities/ApiBook.swift -------------------------------------------------------------------------------- /Library/EntityGateway/API/Gateways/ApiBooksGateway.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/EntityGateway/API/Gateways/ApiBooksGateway.swift -------------------------------------------------------------------------------- /Library/EntityGateway/API/JSON.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/EntityGateway/API/JSON.swift -------------------------------------------------------------------------------- /Library/EntityGateway/API/Requests/AddBookApiRequest.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/EntityGateway/API/Requests/AddBookApiRequest.swift -------------------------------------------------------------------------------- /Library/EntityGateway/API/Requests/BooksApiRequest.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/EntityGateway/API/Requests/BooksApiRequest.swift -------------------------------------------------------------------------------- /Library/EntityGateway/API/Requests/DeleteBookApiRequest.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/EntityGateway/API/Requests/DeleteBookApiRequest.swift -------------------------------------------------------------------------------- /Library/EntityGateway/Cache/CacheBooksGateway.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/EntityGateway/Cache/CacheBooksGateway.swift -------------------------------------------------------------------------------- /Library/EntityGateway/LocalPersistence/CoreDataStack.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/EntityGateway/LocalPersistence/CoreDataStack.swift -------------------------------------------------------------------------------- /Library/EntityGateway/LocalPersistence/Entities/CoreDataBook.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/EntityGateway/LocalPersistence/Entities/CoreDataBook.swift -------------------------------------------------------------------------------- /Library/EntityGateway/LocalPersistence/Gateways/LocalPersistenceBooksGateway.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/EntityGateway/LocalPersistence/Gateways/LocalPersistenceBooksGateway.swift -------------------------------------------------------------------------------- /Library/EntityGateway/LocalPersistence/Library.xcdatamodeld/.xccurrentversion: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/EntityGateway/LocalPersistence/Library.xcdatamodeld/.xccurrentversion -------------------------------------------------------------------------------- /Library/EntityGateway/LocalPersistence/Library.xcdatamodeld/Library.xcdatamodel/contents: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/EntityGateway/LocalPersistence/Library.xcdatamodeld/Library.xcdatamodel/contents -------------------------------------------------------------------------------- /Library/EntityGateway/LocalPersistence/NSManagedObjectContext-Utils.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/EntityGateway/LocalPersistence/NSManagedObjectContext-Utils.swift -------------------------------------------------------------------------------- /Library/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Info.plist -------------------------------------------------------------------------------- /Library/Other/Date-RelativeDescription.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Other/Date-RelativeDescription.swift -------------------------------------------------------------------------------- /Library/Other/UITextField-EmptyText.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Other/UITextField-EmptyText.swift -------------------------------------------------------------------------------- /Library/Other/UIViewController-Alert.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Other/UIViewController-Alert.swift -------------------------------------------------------------------------------- /Library/Other/ViewRouter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Other/ViewRouter.swift -------------------------------------------------------------------------------- /Library/Scenes/AddBook/AddBookConfigurator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Scenes/AddBook/AddBookConfigurator.swift -------------------------------------------------------------------------------- /Library/Scenes/AddBook/AddBookPresenter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Scenes/AddBook/AddBookPresenter.swift -------------------------------------------------------------------------------- /Library/Scenes/AddBook/AddBookViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Scenes/AddBook/AddBookViewController.swift -------------------------------------------------------------------------------- /Library/Scenes/AddBook/AddBookViewRouter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Scenes/AddBook/AddBookViewRouter.swift -------------------------------------------------------------------------------- /Library/Scenes/BookDetails/BookDetailsConfigurator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Scenes/BookDetails/BookDetailsConfigurator.swift -------------------------------------------------------------------------------- /Library/Scenes/BookDetails/BookDetailsPresenter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Scenes/BookDetails/BookDetailsPresenter.swift -------------------------------------------------------------------------------- /Library/Scenes/BookDetails/BookDetailsTableViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Scenes/BookDetails/BookDetailsTableViewController.swift -------------------------------------------------------------------------------- /Library/Scenes/BookDetails/BookDetailsViewRouter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Scenes/BookDetails/BookDetailsViewRouter.swift -------------------------------------------------------------------------------- /Library/Scenes/Books/BookTableViewCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Scenes/Books/BookTableViewCell.swift -------------------------------------------------------------------------------- /Library/Scenes/Books/BooksConfigurator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Scenes/Books/BooksConfigurator.swift -------------------------------------------------------------------------------- /Library/Scenes/Books/BooksPresenter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Scenes/Books/BooksPresenter.swift -------------------------------------------------------------------------------- /Library/Scenes/Books/BooksTableViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Scenes/Books/BooksTableViewController.swift -------------------------------------------------------------------------------- /Library/Scenes/Books/BooksViewRouter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/Library/Scenes/Books/BooksViewRouter.swift -------------------------------------------------------------------------------- /LibraryTests/Gateways/ApiClientTest.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Gateways/ApiClientTest.swift -------------------------------------------------------------------------------- /LibraryTests/Gateways/CacheBooksGatewayTest.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Gateways/CacheBooksGatewayTest.swift -------------------------------------------------------------------------------- /LibraryTests/Gateways/CoreDataBooksGatewayTest.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Gateways/CoreDataBooksGatewayTest.swift -------------------------------------------------------------------------------- /LibraryTests/Helpers/Creators/AddBookParameters.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Helpers/Creators/AddBookParameters.swift -------------------------------------------------------------------------------- /LibraryTests/Helpers/Creators/Book.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Helpers/Creators/Book.swift -------------------------------------------------------------------------------- /LibraryTests/Helpers/Creators/NSError.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Helpers/Creators/NSError.swift -------------------------------------------------------------------------------- /LibraryTests/Helpers/Gateways/ApiBooksGatewaySpy.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Helpers/Gateways/ApiBooksGatewaySpy.swift -------------------------------------------------------------------------------- /LibraryTests/Helpers/Gateways/BooksGatewaySpy.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Helpers/Gateways/BooksGatewaySpy.swift -------------------------------------------------------------------------------- /LibraryTests/Helpers/Gateways/LocalPersistenceBooksGatewaySpy.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Helpers/Gateways/LocalPersistenceBooksGatewaySpy.swift -------------------------------------------------------------------------------- /LibraryTests/Helpers/InMemoryCoreDataStack.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Helpers/InMemoryCoreDataStack.swift -------------------------------------------------------------------------------- /LibraryTests/Helpers/NSManagedObjectContextSpy.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Helpers/NSManagedObjectContextSpy.swift -------------------------------------------------------------------------------- /LibraryTests/Helpers/Presenters/AddBookPresenterStub.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Helpers/Presenters/AddBookPresenterStub.swift -------------------------------------------------------------------------------- /LibraryTests/Helpers/Routers/AddBookViewRouterSpy.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Helpers/Routers/AddBookViewRouterSpy.swift -------------------------------------------------------------------------------- /LibraryTests/Helpers/Routers/BooksViewRouterSpy.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Helpers/Routers/BooksViewRouterSpy.swift -------------------------------------------------------------------------------- /LibraryTests/Helpers/URLSessionStub.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Helpers/URLSessionStub.swift -------------------------------------------------------------------------------- /LibraryTests/Helpers/UseCases/DeleteBookUseCaseSpy.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Helpers/UseCases/DeleteBookUseCaseSpy.swift -------------------------------------------------------------------------------- /LibraryTests/Helpers/UseCases/DisplayBooksUseCaseStub.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Helpers/UseCases/DisplayBooksUseCaseStub.swift -------------------------------------------------------------------------------- /LibraryTests/Helpers/Views/BookCellViewSpy.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Helpers/Views/BookCellViewSpy.swift -------------------------------------------------------------------------------- /LibraryTests/Helpers/Views/BooksViewSpy.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Helpers/Views/BooksViewSpy.swift -------------------------------------------------------------------------------- /LibraryTests/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Info.plist -------------------------------------------------------------------------------- /LibraryTests/Presenters/BooksPresenterTest.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Presenters/BooksPresenterTest.swift -------------------------------------------------------------------------------- /LibraryTests/Result.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/Result.swift -------------------------------------------------------------------------------- /LibraryTests/UseCases/DeleteBookUseCaseTest.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/LibraryTests/UseCases/DeleteBookUseCaseTest.swift -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FortechRomania/ios-mvp-clean-architecture/HEAD/readme.md --------------------------------------------------------------------------------