A photo viewer app which fetches GIFs from a https://giphy.com/ service. On first screen you can search GIFs by name and change layout. When you will tap on some photo - next screen will be presented with large photo. On this screen you can share selected GIF.
-
Swift 5.0
-
Xcode 10.2
-
Supported IOS: 9.0+
-
Supported devices: iPhone4s+
-
The main screen is implemented using MVVM
-
FLAnimatedImage - for presenting animated GIF
-
SwiftyGiphy - API for GIPHY service
-
ObjectMapper - map response from API to model
-
SDWebImage - load and cashe GIF-images
Unit tests placed in <SBTestTaskTests.swift> file
-
testAPIWorking() - test that API result for search text "cat" will be received in expected time (timeLimitForResponse = 20.0)
-
testResponsePagination() - test that API will give expected number or results (pageLimit = 25) for search text "cat"
-
testAPIForEmptyResponse() - test that API will retutn 0 results and no error for search text "!"
-
testEmptyResponseResult() - test that info label will be shown with text "No GIFs match this search." for search text "!"
For open project you need Xcode version 10.2 or higher.
- Open <SBTestTask.xcodeproj> file in Xcode.
- At the SBTestTask target general settings page set your development team.
- Select device (or simulator) on which you want to install the App.
- Build and Run.