https://github.com/plokhotnyuk/calculator
Example of executable specification inspired by end-to-end approach described in: http://www.growing-object-oriented-software.com/
https://github.com/plokhotnyuk/calculator
Last synced: 3 months ago
JSON representation
Example of executable specification inspired by end-to-end approach described in: http://www.growing-object-oriented-software.com/
- Host: GitHub
- URL: https://github.com/plokhotnyuk/calculator
- Owner: plokhotnyuk
- License: mit
- Created: 2012-07-10T06:08:51.000Z (over 13 years ago)
- Default Branch: master
- Last Pushed: 2020-09-12T05:55:31.000Z (about 5 years ago)
- Last Synced: 2025-04-08T04:33:35.935Z (6 months ago)
- Language: Scala
- Homepage:
- Size: 1.94 MB
- Stars: 7
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](http://travis-ci.com/plokhotnyuk/calculator)
[](https://coveralls.io/github/plokhotnyuk/calculator?branch=master)```sh
___ ___
|| | ___ ___ || |
|| _|__/ _\_______/ _\_______|| _|
||(___( (________( (_________||((_)
|| | \___/ \___/ || |
|| | ___ || |
|| _|________/ _\_____________|| _|
||(_________( (_______________||((_)
|| | \___/ || |
|| | || |
|| | CALCULATOR || |
|| | || |
```Inspired by the end-to-end approach from the amazing book:
http://www.growing-object-oriented-software.com/Initially developed in Java than converted to Scala:
https://github.com/plokhotnyuk/calculator/tree/fee1b741aa74d659b8e30ad66d26d9ca6a2f6bc5Features are described as executable specification:
https://github.com/plokhotnyuk/calculator/blob/master/src/test/scala/com/github/plokhotnyuk/calculator/CalculatorSpec.scala## Building & running application
Instructions for building are simple:
```sh
sbt clean assembly
```
BEWARE! The end-to-end test over running Swing app will be started and possible you will be shocked by moving mouse
pointer that will press the app buttons on your desktop. And possible you will be double-shocked to see that the same
tests complete during Travis CI build or (in case of test failures) to read cute explanation instead of stack traces.Run calculator by following command:
```sh
java -jar target/scala-2.13/calculator.jar
```To build the test coverage report use:
```sh
sbt clean coverage test coverageReport
```Have a fun to read & lean!