Mercurial > vim
changeset 35114:219a779511fe v9.1.0391
patch 9.1.0391: Vim9: could improve testing
Commit: https://github.com/vim/vim/commit/5715a726282018e708cff7dd930c9f8f7c37fa7e
Author: Yegappan Lakshmanan <yegappan@yahoo.com>
Date: Fri May 3 18:24:07 2024 +0200
patch 9.1.0391: Vim9: could improve testing
Problem: Vim9: could improve testing
(Ernie Rael)
Solution: Support defcompile for test_override() to
improve testing (Yegappan Lakshmanan)
fixes: #14553
closes: #14712
Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Fri, 03 May 2024 18:30:16 +0200 |
parents | e19edcdbec43 |
children | d401437829ee |
files | runtime/doc/testing.txt src/globals.h src/testdir/test_vim9_func.vim src/testing.c src/userfunc.c src/version.c |
diffstat | 6 files changed, 13 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/runtime/doc/testing.txt +++ b/runtime/doc/testing.txt @@ -1,4 +1,4 @@ -*testing.txt* For Vim version 9.1. Last change: 2024 Apr 07 +*testing.txt* For Vim version 9.1. Last change: 2024 May 03 VIM REFERENCE MANUAL by Bram Moolenaar @@ -369,6 +369,9 @@ test_override({name}, {val}) *test_ov autoload `import autoload` will load the script right away, not postponed until an item is used char_avail disable the char_avail() function + defcompile all the |:def| functions in a sourced script are + compiled when defined. This is similar to using + the |:defcompile| command in a script. nfa_fail makes the NFA regexp engine fail to force a fallback to the old engine no_query_mouse do not query the mouse position for "dec"
--- a/src/globals.h +++ b/src/globals.h @@ -1936,6 +1936,7 @@ EXTERN int reset_term_props_on_termresp EXTERN int disable_vterm_title_for_testing INIT(= FALSE); EXTERN long override_sysinfo_uptime INIT(= -1); EXTERN int override_autoload INIT(= FALSE); +EXTERN int override_defcompile INIT(= FALSE); EXTERN int ml_get_alloc_lines INIT(= FALSE); EXTERN int ignore_unreachable_code_for_testing INIT(= FALSE);
index b008929611fd60b0d1eecb866e1c2f6cc65372e3..d07bbfba70705d5d371e25907ebb6f9f3ba4cb69 GIT binary patch literal 107935 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 B6m9?j
--- a/src/testing.c +++ b/src/testing.c @@ -1051,6 +1051,8 @@ f_test_override(typval_T *argvars, typva ml_get_alloc_lines = val; else if (STRCMP(name, (char_u *)"autoload") == 0) override_autoload = val; + else if (STRCMP(name, (char_u *)"defcompile") == 0) + override_defcompile = val; else if (STRCMP(name, (char_u *)"ALL") == 0) { disable_char_avail_for_testing = FALSE;
--- a/src/userfunc.c +++ b/src/userfunc.c @@ -5452,6 +5452,10 @@ define_function( // :func does not use Vim9 script syntax, even in a Vim9 script file fp->uf_script_ctx.sc_version = SCRIPT_VERSION_MAX; + // If test_override('defcompile' 1) is used, then compile the function now + if (eap->cmdidx == CMD_def && override_defcompile) + defcompile_function(fp, NULL); + goto ret_free; erret: