README
This application implements a simple project that handles South African phone numbers.
The application implements the following use cases:
- Import csv with id and phone numbers via UI form
- View imported numbers distinguishing between valids, invalids but fixed, invalids and not recoverable
- Import csv with id and phone numbers via REST API (for example there is the folder /curl that has a simple sh script to send the csv to this app)
- UI form to test single phone number with same validation.
Chosen technologies
Backend: Java + Spring Boot
DB: H2 (whose schema is created automatically, the data is erased at every file import)
Frontend: Thymeleaf and Material UI library
Requirements
- Java 15
- Maven 3.6.3
- Unix os
Importing and running the project
Import the project as a Maven project in your preferred IDE.
To run the application simply run in the IDE the class SouthAfricanPhoneNumbersValidatorApplication. The application listens on http://localhost:8080.
To run the JUnit test cases simply run in the IDE every class under the src/test/ folder
H2 Database
To connect to the database via web interface go to http://localhost:8080/h2-console after at least one run. username: sa password: password