A simple Todo list application using Spring Boot with the following options:
- Spring JPA and MySQL for data persistence
- Thymeleaf template for the rendering.
To build and run the sample from a fresh clone of this repo:
- Create one database in your MySQL instance :
ecommerce
- Update the application.properties file in the
src/main/resources
folder with the URL, username and password for your MySQL instance. The table schema for the e-commerce objects will be created for you in the database.
mvnw package
java -jar target/ECommerce-0.0.1-SNAPSHOT.jar
Alias scripts are available to ease executing tests:
All tests
./test.sh
Unit tests only
./test.sh -u
Integration tests only
./test.sh -i
Integration tests runs on in memory test database whose tables are erased before each test.
Integration test classes are identifiable by the use of @SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT)
and test methods are tagged with @Category(SlowTests.class)
Unit tests classes are identifiable by absence of @SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT)
and their test methods are tagged with @Category(FastTests.class)
Set the git pre-commit hook as following:
cp pre-commit.sh ./.git/hooks/pre-commit
chmod 755 ./.git/hooks/pre-commit
- Add test : cart repository
- Extract test helpers
- Extract currencyFormatter ?