test: Improve functional test debuggability and efficiency

- Read TEST_TAG/TEST_FILTER env vars from cmake/RunTests.cmake. Setting these
  environment variables will pass --tags/--filter to busted, which can used to
  filter which tests are executed.
- Remove calls to nvim msgpack-rpc API outside tests. This removes the
  requirement of having a static `clear` call in test/functional/helpers.lua
- Use the new busted command-line option "--lazy" to ensure the setup/teardown
  hooks are only executed when a suite runs at least one test.

Now its possible to run/debug a single test like this:

```sh
TEST_FILTER='some test string' make test
```

Which will only run tests containing "some test string" in the title.
Another option is:

```sh
TEST_TAG=some-tag make test
```

After putting #some-tag into the test title. This also improves debugging
experience because there will be no unnecessary gdbserver instances whe GDB=1 is
passed.
This commit is contained in:
Thiago de Arruda
2015-03-17 08:48:03 -03:00
parent 47e90ea1c5
commit 1ee7ca7bc0
4 changed files with 17 additions and 7 deletions

View File

@@ -276,8 +276,6 @@ local function expect(contents)
return eq(dedent(contents), curbuf_contents())
end
clear()
return {
clear = clear,
spawn = spawn,