This application shows a list with all pokemon characters.
This app offers a main view based on a table view that displays a collection of characters. This list is always ordered and also allows an user to search any pokemon using a search bar.
For performance reasons, this app ask to the server for only 20 characters per request. So, any time an user reachs the bottom list, a new request is performed with next offset.
When an user taps any character cell, a detail view with picture, abilites and types is shown(this view offers landscape support).
This app supports light and dark mode.
MPV is great for unit testing due to having the business logic isolated from the view. Also, this model has a good balance between layer complexity and simplicity, so if the app has a small-medium size, it could fit in most of the cases.
In order to save a current pokemon list of an user , the application uses Core Data.
The project contains 2 main tests
- Presenter service testing
- Presenter default business logic testing
- Improve error handling
- Core data testing
- Search by name againts server using search bar
- UI testing
- Full pokemon management offline
- Front design