fix: switch to bats --filter for running a single test

This commit is contained in:
Jose Diaz-Gonzalez
2020-12-11 11:45:15 -05:00
parent 775432c73f
commit f536a05e06
2 changed files with 4 additions and 79 deletions

View File

@@ -75,20 +75,14 @@ bats tests/unit/10_apps.bats tests/unit/10_certs.bats
In order to increase testing velocity, a wrapper script around Bats is available that can be used to run a single test case within a suite.
Tests within a suite may be listed by specifying the suite as a parameter to the `tests/bats-exec-test-single` script.
Tests within a suite may be listed by specifying the suite as a parameter to `bats`.
```shell
tests/bats-exec-test-single tests/unit/10_apps.bats
bats tests/unit/10_apps.bats
```
A single test can be specified as a second parameter. The test is selected by fuzzy-match, and only the first match is executed.
A single test can be specified via the `--filter` argument. The tests are selected via regex match, and all matches are executed.
```shell
tests/bats-exec-test-single tests/unit/10_apps.bats clone
```
Some special characters are translated in the test listing, specifically the characters `( ) :`, while others are not. The fuzzy matching happens on test names as listed by this script, so executing a test with a more specific name will work as expected.
```shell
tests/bats-exec-test-single tests/unit/10_apps.bats clone_-2d-2dskip-2ddeploy
bats --filter clone tests/unit/10_apps.bats
```