Mercurial > vim
view src/testdir/test_help.vim @ 18991:847cc7932c42 v8.2.0056
patch 8.2.0056: execution stack is incomplete and inefficient
Commit: https://github.com/vim/vim/commit/1a47ae32cdc19b0fd5a82e19fe5fddf45db1a506
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Dec 29 23:04:25 2019 +0100
patch 8.2.0056: execution stack is incomplete and inefficient
Problem: Execution stack is incomplete and inefficient.
Solution: Introduce a proper execution stack and use it instead of
sourcing_name/sourcing_lnum. Create a string only when used.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 29 Dec 2019 23:15:04 +0100 |
parents | 5bef1043abff |
children | 1b02482e6a61 |
line wrap: on
line source
" Tests for :help func Test_help_restore_snapshot() help set buftype= help edit x help helpclose endfunc func Test_help_errors() call assert_fails('help doesnotexist', 'E149:') call assert_fails('help!', 'E478:') new set keywordprg=:help call setline(1, " ") call assert_fails('normal VK', 'E349:') bwipe! endfunc func Test_help_expr() help expr-!~? call assert_equal('eval.txt', expand('%:t')) close endfunc func Test_help_keyword() new set keywordprg=:help call setline(1, " Visual ") normal VK call assert_match('^Visual mode', getline('.')) call assert_equal('help', &ft) close bwipe! endfunc func Test_help_local_additions() call mkdir('Xruntime/doc', 'p') call writefile(['*mydoc.txt* my awesome doc'], 'Xruntime/doc/mydoc.txt') call writefile(['*mydoc-ext.txt* my extended awesome doc'], 'Xruntime/doc/mydoc-ext.txt') let rtp_save = &rtp set rtp+=./Xruntime help 1 call search('mydoc.txt') call assert_equal('|mydoc.txt| my awesome doc', getline('.')) 1 call search('mydoc-ext.txt') call assert_equal('|mydoc-ext.txt| my extended awesome doc', getline('.')) close call delete('Xruntime', 'rf') let &rtp = rtp_save endfunc func Test_help_completion() call feedkeys(":help :undo\<C-A>\<C-B>\"\<CR>", 'tx') call assert_equal('"help :undo :undoj :undol :undojoin :undolist', @:) endfunc