mirror of
https://github.com/vim/vim.git
synced 2025-09-25 03:54:15 -04:00
runtime(syntax-tests): Introduce self tests for screen dumping
Write a batch of test files with made-up syntax to serve for additional linewise checks to be manually performed whenever the algorithm for screen dump file generation is modified. Define a shell variable VIM_SYNTAX_SELF_TESTING to run these tests: cd runtime/syntax/ VIM_SYNTAX_SELF_TESTING=1 make clean test related: #15150 Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
cc5482edb4
commit
d2f4987999
@@ -116,13 +116,17 @@ func RunTest()
|
||||
let setup = glob('input/setup/*.vim', 1, 1)
|
||||
\ ->reduce({d, f -> extend(d, {fnamemodify(f, ':t:r'): f})}, {})
|
||||
|
||||
for fname in glob('input/*.*', 1, 1)
|
||||
if fname =~ '\~$'
|
||||
" backup file, skip
|
||||
continue
|
||||
endif
|
||||
if exists("$VIM_SYNTAX_SELF_TESTING")
|
||||
let dirpath = 'input/selftestdir/'
|
||||
let fnames = readdir(dirpath, {fname -> fname !~ '^README.txt$'})
|
||||
else
|
||||
let dirpath = 'input/'
|
||||
let fnames = readdir(dirpath, {fname -> fname !~ '\~$' && fname =~ '^.\+\..\+$'})
|
||||
endif
|
||||
|
||||
let root = fnamemodify(fname, ':t:r')
|
||||
for fname in fnames
|
||||
let root = fnamemodify(fname, ':r')
|
||||
let fname = dirpath .. fname
|
||||
let filetype = substitute(root, '\([^_.]*\)[_.].*', '\1', '')
|
||||
let failed_root = 'failed/' .. root
|
||||
|
||||
|
Reference in New Issue
Block a user