This repository stores clear feature tests for the Dab command line interface's major functionality, forming a kind of contract that the Dab CLI interface must continue to adhere to in the future to provide a better user experience. Features are used both as regressions tests, usage documentation, and a feed for events about the Dab CLI changing This test suite uses Cucumber Aruba for CLI testing.
Aruba provides a corpus of predefined steps that should provide just about everything you could need to test any command line interface. For usage information check out the documentation or sometimes more useful is the implementation.
Features are tested against the latest version of Dab or a local version if one is specified or found in an expected location. Before merging changes tests are executed in CI to public assert the tests are all passing.
./test.sh
Feature files can be converted into a simple static HTML website able to be hosted on GitHub pages and the like. Any changes to feature files require a manual execution of the following script to update the website's static resources, CI will not run this for you!
./ssg.sh
At the end it should give you a link able to be opened in your browser to view the generated website.