Тестовое задание от Альфа-банка.
Создать сервис, который обращается к сервису курсов валют, и отдает gif в ответ:
если курс по отношению к рублю за сегодня стал выше вчерашнего, то отдаем рандомную отсюда https://giphy.com/search/rich
если ниже - отсюда https://giphy.com/search/broke
Ссылки
REST API курсов валют - https://docs.openexchangerates.org/
REST API гифок - https://developers.giphy.com/docs/api#quick-start-guide
Must Have
Сервис на Spring Boot 2 + Java / Kotlin.
Запросы приходят на HTTP endpoint, туда передается код валюты.
Для взаимодействия с внешними сервисами используется Feign.
Все параметры (валюта по отношению к которой смотрится курс, адреса внешних сервисов и т.д.) вынесены в настройки.
На сервис написаны тесты (для мока внешних сервисов можно использовать @mockbean или WireMock).
Для сборки должен использоваться Gradle.
Результатом выполнения должен быть репо на GitHub с инструкцией по запуску.
Nice to Have
Сборка и запуск Docker контейнера с этим сервисом.
С использованием Gradle:
gradlew bootRun
После старта приложения открываем в браузере страницу по адресу http://localhost:7717/[currency] , вместо [currency] необходимо указать код валюты, например RUB, и смотрим на желаемую GIF-ку. Без указания (просто переход по localhost:7717
результаты будут представлены для RUB.)
P.S.: Для стандартного тарифа в качестве базовой валюты сервис openexchangerates.org предоставляет только USD. Настройки базовой валюты и другие параметры (в том числе порт) можно поменять в application.yml файле.