Выполненное тестовое задание для "Nexign Bootcamp'25 - Инженерные практики"
Выполнены все 3 задачи, использована H2 Database, покрытие тестов более 75%.
-
Клонируйте репозиторий:
git clone https://github.com/petrovviacheslav/subscriber-data-tracking.git cd subscriber-data-tracking
-
Запустите приложение:
./gradlew bootRun
-
API будет доступно по адресу: http://localhost:8080/api.
-
Консоль H2 Database: http://localhost:8080/h2-console.
Для запуска тестов выполните команду:
./gradlew test
Покрытие кода проверяется с помощью JaCoCo. Отчет о покрытии доступен в директории:
build/reports/jacoco/test/html/
или по адресу
${path-to-project}/build/reports/jacoco/test/html/index.html
- CDR (CdrReportController)
- POST
/api/cdr-reports
- создать отчёт по номеру абонента за промежуток времени
- POST
- UDR (UsageDataReportController)
- GET
/api/udr/by-msisdn
- вернуть UDR запись абонента за нужный месяц или весь период по номеру телефона - GET
/api/udr/all
- вернуть UDR записи всех абонентов за определённый месяц
- GET
Примеры http-запросов и ответов
Проект доступен с открытым исходным кодом на условиях MIT license.
Авторские права 2025 Вячеслав Петров