App for pricing ice creams of different flavours with types of different discounts.
The concept of functional decomposition was used to isolate business rules allowing for unit testing of these functions
- Discounts apply to purchasing a further item. e.g. when buying two items which allow a discount you'd need to buy a third item on which that discount would apply
- Discounts are applied to two decimal places
In addition to the standard Kotlin libraries, the following were also used:
- JUnit 5 : for new features
- Hamcrest for Kotlin : for improved test assertions and messages
./gradlew clean test
./gradlew clean build
./gradlew run