diff options
author | ZyX <kp-pav@yandex.ru> | 2017-04-01 11:07:08 +0300 |
---|---|---|
committer | ZyX <kp-pav@yandex.ru> | 2017-04-01 11:07:08 +0300 |
commit | 933d60bc2356c1e22b8dbf8f8847c5323bc1f7a7 (patch) | |
tree | 6ea6262e09c48c633243dd7e0355b87a1b5603bc | |
parent | 8de53157b691dd4ce604a5be0e2d9c3b6014bfdb (diff) | |
download | rneovim-933d60bc2356c1e22b8dbf8f8847c5323bc1f7a7.tar.gz rneovim-933d60bc2356c1e22b8dbf8f8847c5323bc1f7a7.tar.bz2 rneovim-933d60bc2356c1e22b8dbf8f8847c5323bc1f7a7.zip |
unittests: Do not hang when error message is too long
-rw-r--r-- | test/README.md | 3 | ||||
-rw-r--r-- | test/unit/helpers.lua | 4 | ||||
-rw-r--r-- | test/unit/testtest_spec.lua | 13 |
3 files changed, 18 insertions, 2 deletions
diff --git a/test/README.md b/test/README.md index df66f24626..dc83b1ceef 100644 --- a/test/README.md +++ b/test/README.md @@ -99,3 +99,6 @@ get backtrace from). approximately 90% of the tests. Should be used when finding cores is too hard for some reason. Normally (on OS X or when `NVIM_TEST_CORE_GLOB_DIRECTORY` is defined and this variable is not) cores are checked for after each test. + +`NVIM_TEST_RUN_TESTTEST` (U) (1): allows running `test/unit/testtest_spec.lua` +used to check how testing infrastructure works. diff --git a/test/unit/helpers.lua b/test/unit/helpers.lua index f4e6194fc7..74b5b4e8bd 100644 --- a/test/unit/helpers.lua +++ b/test/unit/helpers.lua @@ -554,8 +554,6 @@ local function gen_itp(it) end else sc.close(wr) - sc.wait(child_pid) - child_pid = nil local function check() local res = sc.read(rd, 2) eq(2, #res) @@ -570,6 +568,8 @@ local function gen_itp(it) assert.just_fail(err) end local err, emsg = pcall(check) + sc.wait(child_pid) + child_pid = nil sc.close(rd) if not err then if allow_failure then diff --git a/test/unit/testtest_spec.lua b/test/unit/testtest_spec.lua new file mode 100644 index 0000000000..2397081b09 --- /dev/null +++ b/test/unit/testtest_spec.lua @@ -0,0 +1,13 @@ +local helpers = require('test.unit.helpers')(after_each) +local assert = require('luassert') +local itp = helpers.gen_itp(it) + +-- All of the below tests must fail. Check how exactly they fail. +if os.getenv('NVIM_TEST_RUN_TESTTEST') ~= '1' then + return +end +describe('test code', function() + itp('does not hang when working with lengthy errors', function() + assert.just_fail(('x'):rep(65536)) + end) +end) |