Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/panilya/test-assignment

Test assignment in Kotlin
https://github.com/panilya/test-assignment

Last synced: about 22 hours ago
JSON representation

Test assignment in Kotlin

Awesome Lists containing this project

README

        

# Test Assignment for the position of Junior Backend Developer at UpUp

## Task

We need a Spring Boot + Kotlin app with an API to receive incoming calls from Android apps. Use Swagger for autogenerated API documentation.
The app will collect and store customers' data. It should allow to receive and process JSON requests with the following params:
First name
Last name
Phone number
Email
App
Date (default = now)
The new app should validate phone numbers (length, format) and emails. Valid contacts should be added to our database and checked for a duplicate.
If the new contact has invalid data, the app should send an error code and message with an error description. For example, you should ask senders to correct the phone number and email. We also need an API to search for collected customers by phone numbers or emails.

## Steps to run:
1) Clone the repository
2) Run the command `docker run -p 5432:5432 -d --name callhandler -e POSTGRES_USER=callhandler -e POSTGRES_PASSWORD=callhandler -e POSTGRES_DB=callhandler postgres` to start the database
3) Run the Spring Boot app
4) Go to http://localhost:8080/swagger-ui/index.html to see the API documentation