src/winclip.c \
src/window.c \
src/xxd/xxd.c \
- src/testdir/gen_opt_test.vim \
- src/testdir/README.txt \
- src/testdir/Make_all.mak \
src/testdir/*.in \
src/testdir/*.py \
- src/testdir/keycode_check.vim \
+ src/testdir/Make_all.mak \
+ src/testdir/README.txt \
+ src/testdir/commondumps.vim \
+ src/testdir/crash/* \
+ src/testdir/dumps/*.dump \
+ src/testdir/dumps/*.vim \
src/testdir/keycode_check.json \
+ src/testdir/keycode_check.vim \
src/testdir/lsan-suppress.txt \
- src/testdir/sautest/autoload/*.vim \
- src/testdir/testluaplugin/lua/testluaplugin/*.lua \
- src/testdir/check.vim \
- src/testdir/commondumps.vim \
- src/testdir/gui_init.vim \
- src/testdir/gui_preinit.vim \
- src/testdir/mouse.vim \
- src/testdir/runtest.vim \
- src/testdir/screendump.vim \
- src/testdir/setup.vim \
- src/testdir/setup_gui.vim \
- src/testdir/shared.vim \
- src/testdir/vim9.vim \
- src/testdir/script_util.vim \
- src/testdir/summarize.vim \
- src/testdir/term_util.vim \
- src/testdir/view_util.vim \
- src/testdir/viewdumps.vim \
- src/testdir/test[0-9]*.ok \
- src/testdir/test77a.ok \
- src/testdir/test77a.com \
- src/testdir/test_*.vim \
src/testdir/python2/*.py \
src/testdir/python3/*.py \
+ src/testdir/python_after/*.py \
+ src/testdir/python_before/*.py \
src/testdir/pythonx/*.py \
src/testdir/pythonx/topmodule/__init__.py \
src/testdir/pythonx/topmodule/submodule/__init__.py \
src/testdir/pythonx/topmodule/submodule/subsubmodule/__init__.py \
src/testdir/pythonx/topmodule/submodule/subsubmodule/subsubsubmodule.py \
- src/testdir/python_after/*.py \
- src/testdir/python_before/*.py \
src/testdir/pyxfile/*.py \
- src/testdir/dumps/*.dump \
- src/testdir/dumps/*.vim \
+ src/testdir/ru_RU/LC_MESSAGES/Makefile \
+ src/testdir/ru_RU/LC_MESSAGES/__PACKAGE__.mo \
+ src/testdir/ru_RU/LC_MESSAGES/__PACKAGE__.po \
+ src/testdir/runtest.vim \
src/testdir/samples/*.html \
src/testdir/samples/*.txt \
src/testdir/samples/*.vim \
src/testdir/samples/poc.zip \
- src/testdir/samples/test000 \
src/testdir/samples/test.zip \
+ src/testdir/samples/test000 \
src/testdir/samples/test_undo.txt.undo \
src/testdir/samples/testa.zip \
- src/testdir/color_ramp.vim \
+ src/testdir/sautest/autoload/*.vim \
src/testdir/silent.wav \
- src/testdir/popupbounce.vim \
- src/testdir/crash/* \
- src/testdir/ru_RU/LC_MESSAGES/Makefile \
- src/testdir/ru_RU/LC_MESSAGES/__PACKAGE__.po \
- src/testdir/ru_RU/LC_MESSAGES/__PACKAGE__.mo \
- src/testdir/window_manager.vim \
+ src/testdir/test77a.com \
+ src/testdir/test77a.ok \
+ src/testdir/test[0-9]*.ok \
+ src/testdir/test_*.vim \
+ src/testdir/testluaplugin/lua/testluaplugin/*.lua \
+ src/testdir/util/check.vim \
+ src/testdir/util/color_ramp.vim \
+ src/testdir/util/gen_opt_test.vim \
+ src/testdir/util/gui_init.vim \
+ src/testdir/util/gui_preinit.vim \
+ src/testdir/util/mouse.vim \
+ src/testdir/util/popupbounce.vim \
+ src/testdir/util/screendump.vim \
+ src/testdir/util/script_util.vim \
+ src/testdir/util/setup.vim \
+ src/testdir/util/setup_gui.vim \
+ src/testdir/util/shared.vim \
+ src/testdir/util/summarize.vim \
+ src/testdir/util/term_util.vim \
+ src/testdir/util/view_util.vim \
+ src/testdir/util/vim9.vim \
+ src/testdir/util/window_manager.vim \
+ src/testdir/viewdumps.vim \
src/proto.h \
src/protodef.h \
src/proto/alloc.pro \
src/proto/pty.pro \
src/pty.c \
src/testdir/Makefile \
- src/testdir/unix.vim \
+ src/testdir/util/unix.vim \
src/toolcheck \
src/vim_icon.xbm \
src/vim_mask.xbm \
src/testdir/Make_dos.mak \
src/testdir/Make_mvc.mak \
src/testdir/Make_ming.mak \
- src/testdir/dos.vim \
+ src/testdir/util/dos.vim \
src/uninstall.c \
src/vim.rc \
src/vim.manifest \
src/os_amiga.h \
src/proto/os_amiga.pro \
src/testdir/Make_amiga.mak \
- src/testdir/amiga.vim \
+ src/testdir/util/amiga.vim \
src/xxd/Make_amiga.mak \
# Source files for Haiku (also in the extra archive).
src/os_vms_mms.c \
src/proto/os_vms.pro \
src/testdir/Make_vms.mms \
- src/testdir/vms.vim \
+ src/testdir/util/vms.vim \
src/xxd/Make_vms.mms \
vimtutor.com \
" Use the script for source code screendump testing. It sources other scripts,
" therefore we must "cd" there.
cd ../../src/testdir
-source screendump.vim
+source util/screendump.vim
+source util/term_util.vim
exe 'cd ' .. fnameescape(syntaxDir)
" For these tests we need to be able to run terminal Vim with 256 colors. On
../../testdir/ru_RU \
../../testdir/sautest \
../../testdir/samples \
+ ../../testdir/util \
../../testdir/dumps \
../../testdir/*.ok \
../../testdir/testluaplugin \
.in.out:
copy $*.ok test.ok
- $(VIMPROG) -u amiga.vim -U NONE --noplugin --not-a-term -s dotest.in $*.in
+ $(VIMPROG) -u util/amiga.vim -U NONE --noplugin --not-a-term -s dotest.in $*.in
diff test.out $*.ok
rename test.out $*.out
-delete X#? ALL QUIET
@rem without the +eval feature test_result.log is a copy of test.log
@if exist test.log ( copy /y test.log test_result.log > nul ) \
else ( echo No failures reported > test_result.log )
- $(VIMPROG) -u NONE $(COMMON_ARGS) -S summarize.vim messages
+ $(VIMPROG) -u NONE $(COMMON_ARGS) -S util\summarize.vim messages
-if exist starttime del starttime
@echo.
@echo Test results:
$(DOSTMP)/%.in : %.in
if not exist $(DOSTMP)\nul mkdir $(DOSTMP)
if exist $(DOSTMP)\$< $(DEL) $(DOSTMP)\$<
- $(VIMPROG) -u dos.vim $(COMMON_ARGS) "+set ff=dos|f $@|wq" $<
+ $(VIMPROG) -u util\dos.vim $(COMMON_ARGS) "+set ff=dos|f $@|wq" $<
# For each input file dostmp/test99.in run the tests.
# This moves test99.in to test99.in.bak temporarily.
$(MV) $(notdir $<) $(notdir $<).bak > NUL
$(CP) $(DOSTMP)\$(notdir $<) $(notdir $<) > NUL
$(CP) $(basename $@).ok test.ok > NUL
- $(VIMPROG) -u dos.vim $(COMMON_ARGS) -s dotest.in $(notdir $<)
+ $(VIMPROG) -u util\dos.vim $(COMMON_ARGS) -s dotest.in $(notdir $<)
-@if exist test.out $(MV) test.out $(DOSTMP)\$@ > NUL
-@if exist $(notdir $<).bak $(MV) $(notdir $<).bak $(notdir $<) > NUL
-@if exist test.ok $(DEL) test.ok
-@if exist XfakeHOME $(DELDIR) XfakeHOME
-@del X*
-@if exist viminfo del viminfo
- $(VIMPROG) -u dos.vim $(COMMON_ARGS) "+set ff=unix|f test.out|wq" \
+ $(VIMPROG) -u util\dos.vim $(COMMON_ARGS) "+set ff=unix|f test.out|wq" \
$(DOSTMP)\$@
@diff test.out $(basename $@).ok & if errorlevel 1 \
( $(MV) test.out $(basename $@).failed > NUL \
test_gui_init.res: test_gui_init.vim
@echo $(VIMPROG) > vimcmd
- $(VIMPROG) -u gui_preinit.vim -U gui_init.vim $(NO_PLUGINS) -S runtest.vim $<
+ $(VIMPROG) -u util\gui_preinit.vim -U util\gui_init.vim $(NO_PLUGINS) -S runtest.vim $<
@$(DEL) vimcmd
-opt_test.vim: gen_opt_test.vim ../optiondefs.h ../../runtime/doc/options.txt
+opt_test.vim: util/gen_opt_test.vim ../optiondefs.h ../../runtime/doc/options.txt
$(VIMPROG) -e -s -u NONE $(COMMON_ARGS) --nofork -S $^
@if test -f test.log; then \
cat test.log; \
@rem without the +eval feature test_result.log is a copy of test.log
@if exist test.log ( copy /y test.log test_result.log > nul ) \
else ( echo No failures reported > test_result.log )
- $(VIMPROG) -u NONE $(COMMON_ARGS) -S summarize.vim messages
+ $(VIMPROG) -u NONE $(COMMON_ARGS) -S util\summarize.vim messages
-if exist starttime del starttime
@echo:
@echo Test results:
$(DOSTMP_INFILES): $(*B).in
if not exist $(DOSTMP)\NUL md $(DOSTMP)
if exist $@ del $@
- $(VIMPROG) -u dos.vim $(COMMON_ARGS) "+set ff=dos|f $@|wq" $(*B).in
+ $(VIMPROG) -u util\dos.vim $(COMMON_ARGS) "+set ff=dos|f $@|wq" $(*B).in
# For each input file dostmp/test99.in run the tests.
# This moves test99.in to test99.in.bak temporarily.
move $(*B).in $(*B).in.bak > nul
copy $(DOSTMP)\$(*B).in $(*B).in > nul
copy $(*B).ok test.ok > nul
- $(VIMPROG) -u dos.vim $(COMMON_ARGS) -s dotest.in $(*B).in
+ $(VIMPROG) -u util\dos.vim $(COMMON_ARGS) -s dotest.in $(*B).in
-@if exist test.out MOVE /y test.out $(DOSTMP)\$(*B).out > nul
-@if exist $(*B).in.bak move /y $(*B).in.bak $(*B).in > nul
-@if exist test.ok del test.ok
-@if exist XfakeHOME rd /s /q XfakeHOME
-@del X*
-@if exist viminfo del viminfo
- $(VIMPROG) -u dos.vim $(COMMON_ARGS) "+set ff=unix|f test.out|wq" \
+ $(VIMPROG) -u util\dos.vim $(COMMON_ARGS) "+set ff=unix|f test.out|wq" \
$(DOSTMP)\$(*B).out
@diff test.out $*.ok & if errorlevel 1 \
( move /y test.out $*.failed > nul \
test_gui_init.res: test_gui_init.vim
@echo $(VIMPROG) > vimcmd
- $(VIMPROG) -u gui_preinit.vim -U gui_init.vim $(NO_PLUGINS) -S runtest.vim $*.vim
+ $(VIMPROG) -u util\gui_preinit.vim -U util\gui_init.vim $(NO_PLUGINS) -S runtest.vim $*.vim
@del vimcmd
-opt_test.vim: gen_opt_test.vim ../optiondefs.h ../../runtime/doc/options.txt
+opt_test.vim: util/gen_opt_test.vim ../optiondefs.h ../../runtime/doc/options.txt
$(VIMPROG) -e -s -u NONE $(COMMON_ARGS) --nofork -S $**
@if exist test.log ( type test.log & exit /b 1 )
-@ write sys$output " "$*" "
-@ write sys$output "-----------------------------------------------"
-@ !run the test
- -@ create/term/wait/nodetach mcr $(VIMPROG) $(GUI_OPTION) -u vms.vim --noplugin -s dotest.in $*.in
+ -@ create/term/wait/nodetach mcr $(VIMPROG) $(GUI_OPTION) -u util/vms.vim --noplugin -s dotest.in $*.in
-@ !analyse the result
-@ directory /size/date test.out
-@ if "''F$SEARCH("test.out.*")'" .NES. "" then rename/nolog test.out $*.out
-@ write sys$output "-----------------------------------------------"
-@ write sys$output "MAKE_VMS.MMS options:"
-@ write sys$output " WANT_GUI = ""$(WANT_GUI)"" "
- -@ write sys$output "Default vimrc file is VMS.VIM:"
+ -@ write sys$output "Default vimrc file is util/VMS.VIM:"
-@ write sys$output "-----------------------------------------------"
- -@ type VMS.VIM
+ -@ type util/VMS.VIM
clean :
-@ if "''F$SEARCH("*.out")'" .NES. "" then delete/noconfirm/nolog *.out.*
# VALGRIND = valgrind --tool=memcheck --leak-check=yes --num-callers=45 --log-file=valgrind.$*
# To execute one test, e.g. in gdb, use something like this:
-# run -f -u unix.vim --gui-dialog-file guidialog -U NONE --noplugin --not-a-term -S runtest.vim test_name.vim
+# run -f -u util/unix.vim --gui-dialog-file guidialog -U NONE --noplugin --not-a-term -S runtest.vim test_name.vim
default: nongui
then cp test.log test_result.log; \
else echo No failures reported > test_result.log; \
fi"
- $(VIMPROG) -u NONE $(NO_INITS) -S summarize.vim messages $(REDIR_TEST_TO_NULL)
+ $(VIMPROG) -u NONE $(NO_INITS) -S util/summarize.vim messages $(REDIR_TEST_TO_NULL)
@rm -f starttime
@echo
@echo 'Test results:'
RM_ON_RUN = test.out X* viminfo
RM_ON_START = test.ok benchmark.out
-RUN_VIMPROG = VIMRUNTIME=$(SCRIPTSOURCE) $(VALGRIND) $(VIMPROG) -f $(GUI_FLAG) -u unix.vim $(NO_INITS) -s dotest.in
+RUN_VIMPROG = VIMRUNTIME=$(SCRIPTSOURCE) $(VALGRIND) $(VIMPROG) -f $(GUI_FLAG) -u util/unix.vim $(NO_INITS) -s dotest.in
# Delete files that may interfere with running tests. This includes some files
# that may result from working on the tests, not only from running them.
# to write and a lot easier to read and debug.
# Limitation: Only works with the +eval feature.
# Add --gui-dialog-file to avoid getting stuck in a dialog.
-RUN_VIMTEST = VIMRUNTIME=$(SCRIPTSOURCE) $(VALGRIND) $(VIMPROG) -f $(GUI_FLAG) -u unix.vim --gui-dialog-file guidialog
+RUN_VIMTEST = VIMRUNTIME=$(SCRIPTSOURCE) $(VALGRIND) $(VIMPROG) -f $(GUI_FLAG) -u util/unix.vim --gui-dialog-file guidialog
newtests: newtestssilent
@/bin/sh -c "if test -f messages; then cat messages; fi"
@echo "$(VIMPROG)" > vimcmd
@echo "$(RUN_GVIMTEST_WITH_GVIMRC)" >> vimcmd
if test -n "$${ASAN_OPTIONS}"; then \
- ASAN_OPTIONS="$${ASAN_OPTIONS}_$*" UBSAN_OPTIONS="$${UBSAN_OPTIONS}_$*" $(RUN_VIMTEST) -u gui_preinit.vim -U gui_init.vim $(NO_PLUGINS) -S runtest.vim $< ; \
+ ASAN_OPTIONS="$${ASAN_OPTIONS}_$*" UBSAN_OPTIONS="$${UBSAN_OPTIONS}_$*" $(RUN_VIMTEST) -u util/gui_preinit.vim -U util/gui_init.vim $(NO_PLUGINS) -S runtest.vim $< ; \
else \
- $(RUN_VIMTEST) -u gui_preinit.vim -U gui_init.vim $(NO_PLUGINS) -S runtest.vim $< ; \
+ $(RUN_VIMTEST) -u util/gui_preinit.vim -U util/gui_init.vim $(NO_PLUGINS) -S runtest.vim $< ; \
fi
@rm vimcmd
-GEN_OPT_DEPS = gen_opt_test.vim ../optiondefs.h ../../runtime/doc/options.txt
+GEN_OPT_DEPS = util/gen_opt_test.vim ../optiondefs.h ../../runtime/doc/options.txt
opt_test.vim: $(GEN_OPT_DEPS)
if test -n "$${ASAN_OPTIONS}"; then \
-This directory contains tests for various Vim features.
+This directory contains test cases for various Vim features.
+The auxiliary functions to perform the tests are in the util/ folder.
+
For testing an indent script see runtime/indent/testdir/README.txt.
+For testing a syntax script see runtime/syntax/testdir/README.txt.
If it makes sense, add a new test method to an already existing file. You may
want to separate it from other tests with comment lines.
set shellslash
" Common with all tests on all systems.
-source setup.vim
+source util/setup.vim
" Needed for RunningWithValgrind().
-source shared.vim
+source util/shared.vim
" Needed for the various Check commands
-source check.vim
+source util/check.vim
" For consistency run all tests with 'nocompatible' set.
" This also enables use of line continuation.
" Tests for autocommands
-source screendump.vim
-import './vim9.vim' as v9
+source util/screendump.vim
+import './util/vim9.vim' as v9
func s:cleanup_buffers() abort
for bnr in range(1, bufnr('$'))
CheckNotGui
CheckFeature balloon_eval_term
-source screendump.vim
+source util/screendump.vim
let s:common_script =<< trim [CODE]
call setline(1, ["one one one", "two tXo two", "three three three"])
" Tests for the Blob types
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
func TearDown()
" Run garbage collection after every test
" Test_breakindent08())
CheckOption breakindent
-source screendump.vim
+source util/screendump.vim
func SetUp()
let s:input ="\tabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOP"
" Tests for setbufline(), getbufline(), appendbufline(), deletebufline()
-source screendump.vim
+source util/screendump.vim
func Test_setbufline_getbufline()
" similar to Test_set_get_bufline()
" When +channel is supported then +job is too, so we don't check for that.
CheckFeature channel
-source screendump.vim
+source util/screendump.vim
let s:python = PythonProg()
if s:python == ''
CheckFeature clientserver
-source shared.vim
+source util/shared.vim
func Check_X11_Connection()
if has('x11')
" Tests for clipmethod
-source window_manager.vim
+source util/window_manager.vim
CheckFeature clipboard_working
CheckFeature xterm_clipboard
let l:lines =<< trim END
set cpm=x11
- source shared.vim
+ source util/shared.vim
func Test()
clipreset
" Tests for editing the command line.
-source screendump.vim
-import './vim9.vim' as v9
+source util/screendump.vim
+import './util/vim9.vim' as v9
func SetUp()
func SaveLastScreenLine()
" Tests for editing the command line.
-source screendump.vim
+source util/screendump.vim
func Test_getcmdwintype()
call feedkeys("q/:let a = getcmdwintype()\<CR>:q\<CR>", 'x!')
CheckFeature conceal
-source screendump.vim
+source util/screendump.vim
func Test_conceal_two_windows()
CheckScreendump
" Some tests, that used to crash Vim
-source screendump.vim
+source util/screendump.vim
CheckScreendump
" Test for cursorline and cursorlineopt
-source screendump.vim
+source util/screendump.vim
func s:screen_attr(lnum) abort
return map(range(1, 8), 'screenattr(a:lnum, v:val)')
" Tests for the Vim script debug commands
-source screendump.vim
+source util/screendump.vim
CheckRunVimInTerminal
" Test for delete().
-source screendump.vim
+source util/screendump.vim
func Test_file_delete()
split Xfdelfile
" Tests for diff mode
-source screendump.vim
+source util/screendump.vim
func Test_diff_fold_sync()
enew!
set term=ansi
endif
-source screendump.vim
+source util/screendump.vim
func Test_display_foldcolumn()
CheckFeature folding
let &t_kD="\e[3;*~"
endif
-source screendump.vim
+source util/screendump.vim
" Needs to come first until the bug in getchar() is
" fixed: https://groups.google.com/d/msg/vim_dev/fXL9yme4H4c/bOR-U6_bAQAJ
" Tests for various eval things.
-source shared.vim
-import './vim9.vim' as v9
+source util/shared.vim
+import './util/vim9.vim' as v9
function s:foo() abort
try
" Tests for various Ex commands.
-source screendump.vim
+source util/screendump.vim
func Test_ex_delete()
new
" test execute()
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
func NestedEval()
let nested = execute('echo "nested\nlines"')
" Tests for the exists() function
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
func Test_exists()
augroup myagroup
" Tests for expressions.
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
func Test_equal()
let base = {}
" Test filter() and map()
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
" list with expression string
func Test_filter_map_list_expr_string()
" Test findfile() and finddir()
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
let s:files = [ 'Xfinddir1/foo',
\ 'Xfinddir1/bar',
" test float functions
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
func Test_abs()
call assert_equal('1.23', string(abs(1.23)))
" Test for folding
-source screendump.vim
+source util/screendump.vim
func PrepIndent(arg)
return [a:arg] + repeat(["\t".a:arg], 5)
" Tests for expressions.
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
func Test_printf_pos_misc()
let lines =<< trim END
" Tests for various functions.
-source screendump.vim
-import './vim9.vim' as v9
+source util/screendump.vim
+import './util/vim9.vim' as v9
" Must be done first, since the alternate buffer must be unset.
func Test_00_bufexists()
" Test glob2regpat()
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
func Test_glob2regpat_invalid()
call assert_equal('^1\.33$', glob2regpat(1.33))
CheckCanRunGui
-source setup_gui.vim
+source util/setup_gui.vim
func Setup()
call GUISetUpCommon()
CheckCanRunGui
-source setup_gui.vim
+source util/setup_gui.vim
func Setup()
call GUISetUpCommon()
" Tests for :help
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
func Test_help_restore_snapshot()
help
" Tests for ":highlight" and highlighting.
-source screendump.vim
-source script_util.vim
-import './vim9.vim' as v9
+source util/screendump.vim
+source util/script_util.vim
+import './util/vim9.vim' as v9
func ClearDict(d)
for k in keys(a:d)
" Test for v:hlsearch
-source screendump.vim
+source util/screendump.vim
func Test_hlsearch()
new
" Test for 'iminsert'
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
let s:imactivatefunc_called = 0
let s:imstatusfunc_called = 0
" Test for insert completion
-source screendump.vim
-import './vim9.vim' as v9
+source util/screendump.vim
+import './util/vim9.vim' as v9
" Test for insert expansion
func Test_ins_complete()
" Test for lambda and closure
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
func Test_lambda_feature()
call assert_equal(1, has('lambda'))
" Tests for the :let command.
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
func Test_let()
" Test to not autoload when assigning. It causes internal error.
" Tests for 'listchars' display with 'list' and :list
-source screendump.vim
+source util/screendump.vim
func Check_listchars(expected, end_lnum, end_scol = -1, leftcol = 0)
if a:leftcol > 0
" Tests for the List and Dict types
scriptencoding utf-8
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
func TearDown()
" Run garbage collection after every test
CheckOption linebreak
CheckFeature conceal
-source screendump.vim
+source util/screendump.vim
function s:screen_lines(lnum, width) abort
return ScreenLines(a:lnum, a:width)
CheckFeature conceal
CheckFeature signs
-source screendump.vim
+source util/screendump.vim
func s:screen_lines(lnum, width) abort
return ScreenLines(a:lnum, a:width)
" Tests for mappings and abbreviations
-source screendump.vim
-import './vim9.vim' as v9
+source util/screendump.vim
+import './util/vim9.vim' as v9
func Test_abbreviation()
new
" Test for :match, :2match, :3match, clearmatches(), getmatches(), matchadd(),
" matchaddpos(), matcharg(), matchdelete(), and setmatches().
-source screendump.vim
+source util/screendump.vim
function Test_match()
highlight MyGroup1 term=bold ctermbg=red guibg=red
CheckFeature menu
-source screendump.vim
+source util/screendump.vim
func Test_load_menu()
try
" Tests for :messages, :echomsg, :echoerr
-source screendump.vim
+source util/screendump.vim
func Test_messages()
let oldmore = &more
CheckNotGui
CheckUnix
-source mouse.vim
+source util/mouse.vim
" Test for modeless characterwise selection (single click)
func Test_modeless_characterwise_selection()
" Test the ":move" command.
-source screendump.vim
+source util/screendump.vim
func Test_move()
enew!
" Most of this works the same in Windows GUI as well as Windows console.
CheckMSWindows
-source mouse.vim
+source util/mouse.vim
" Helper function for sending a grouped sequence of low level key presses
" The modifier key(s) can be included as VK Key Codes in the sequence
call delete("Xnetbeans")
call writefile([], "Xnetbeans", 'D')
let after =<< trim END
- source shared.vim
+ source util/shared.vim
set cpo&vim
func ReadXnetbeans()
" Test for various Normal mode commands
-import './vim9.vim' as v9
-source screendump.vim
+import './util/vim9.vim' as v9
+source util/screendump.vim
func Setup_NewWindow()
10new
" Test for 'number' and 'relativenumber'
-source screendump.vim
+source util/screendump.vim
func s:screen_lines(start, end) abort
return ScreenLines([a:start, a:end], 8)
" Expand directories.
call feedkeys(":set cdpath=./\<C-A>\<C-B>\"\<CR>", 'tx')
call assert_match(' ./samples/ ', @:)
- call assert_notmatch(' ./summarize.vim ', @:)
+ call assert_notmatch(' ./util/summarize.vim ', @:)
set cdpath&
" Expand files and directories.
call feedkeys(":set tags=./\<C-A>\<C-B>\"\<CR>", 'tx')
- call assert_match(' ./samples/.* ./summarize.vim', @:)
+ call assert_match(' ./samples/.* ./test10.in', @:)
call feedkeys(":set tags=./\\\\ dif\<C-A>\<C-B>\"\<CR>", 'tx')
call assert_equal('"set tags=./\\ diff diffexpr diffopt', @:)
" Test for options
" opt_test.vim is generated from src/optiondefs.h and runtime/doc/options.txt
-" using gen_opt_test.vim
+" using util/gen_opt_test.vim
if filereadable('opt_test.vim')
source opt_test.vim
else
set term=ansi
endif
-source screendump.vim
+source util/screendump.vim
" Test for scrolling that modifies buffer during visual block
func Test_visual_block_scroll()
" Test for the termdebug plugin
-source screendump.vim
+source util/screendump.vim
CheckUnix
CheckFeature terminal
" Test for the new-tutor plugin
-source screendump.vim
-source script_util.vim
+source util/screendump.vim
+source util/script_util.vim
func SetUp()
set nocompatible
" Test for completion menu
-source screendump.vim
+source util/screendump.vim
let g:months = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']
let g:setting = ''
CheckFeature popupwin
-source screendump.vim
+source util/screendump.vim
func Test_simple_popup()
CheckScreendump
CheckFeature popupwin
CheckFeature textprop
-source screendump.vim
+source util/screendump.vim
func Test_textprop_popup()
CheckScreendump
CheckFeature profile
-source screendump.vim
+source util/screendump.vim
if has('prof_nsec')
let s:header = 'count total (s) self (s)'
CheckFeature channel
-source screendump.vim
+source util/screendump.vim
func CanTestPromptBuffer()
" We need to use a terminal window to be able to feed keys without leaving
" Tests for put commands, e.g. ":put", "p", "gp", "P", "gP", etc.
-source screendump.vim
+source util/screendump.vim
func Test_put_block()
new
" Test for the quickfix feature.
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
CheckFeature quickfix
-source screendump.vim
+source util/screendump.vim
set encoding=utf-8
CheckFeature clientserver
CheckFeature terminal
-source screendump.vim
-source mouse.vim
+source util/screendump.vim
+source util/mouse.vim
let s:remote_works = 0
let s:skip = 'Skipped: --remote feature is not possible'
" Test for 'scroll', 'scrolloff', 'smoothscroll', etc.
-source screendump.vim
-source mouse.vim
+source util/screendump.vim
+source util/mouse.vim
func Test_reset_scroll()
let scr = &l:scroll
" Test for the search command
-source screendump.vim
+source util/screendump.vim
func Test_search_cmdline()
CheckOption incsearch
" Tests for search_stats, when "S" is not in 'shortmess'
-source screendump.vim
+source util/screendump.vim
func Test_search_stat()
new
CheckNotGui
CheckUnix
-source mouse.vim
+source util/mouse.vim
" Test for select mode
func Test_selectmode_basic()
CheckFeature signs
-source screendump.vim
+source util/screendump.vim
func Test_sign()
new
CheckFeature spell
-source screendump.vim
+source util/screendump.vim
func TearDown()
set nospell
" Test for getstacktrace() and v:stacktrace
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
let s:thisfile = expand('%:p')
let s:testdir = s:thisfile->fnamemodify(':h')
" Tests for startup.
-source screendump.vim
+source util/screendump.vim
" Check that loading startup.vim works.
func Test_startup_script()
" Tests for startup using utf-8.
-source screendump.vim
+source util/screendump.vim
func Test_read_stdin_utf8()
let linesin = ['テスト', '€ÀÈÌÒÙ']
" Not tested yet:
" %N
-source screendump.vim
+source util/screendump.vim
func SetUp()
set laststatus=2
" Tests for the substitute (:s) command
-source screendump.vim
+source util/screendump.vim
" NOTE: This needs to be the first test to be
" run in the file, since it depends on
CheckFeature syntax
-source screendump.vim
+source util/screendump.vim
func GetSyntaxItem(pat)
let c = ''
" Test for tabline
-source screendump.vim
+source util/screendump.vim
func TablineWithCaughtError()
let s:func_in_tabline_called = 1
" Tests for tabpage
-source screendump.vim
+source util/screendump.vim
function Test_tabpage()
CheckFeature quickfix
" Tests for tabpanel
-source screendump.vim
+source util/screendump.vim
CheckFeature tabpanel
function s:reset()
" Test 'tagfunc'
-import './vim9.vim' as v9
-source screendump.vim
+import './util/vim9.vim' as v9
+source util/screendump.vim
func TagFunc(pat, flag, info)
let g:tagfunc_args = [a:pat, a:flag, a:info]
" Tests for tagjump (tags and special searches)
-source screendump.vim
+source util/screendump.vim
" SEGV occurs in older versions. (At least 7.4.1748 or older)
func Test_ptag_with_notagstack()
CheckNotGui
CheckUnix
-source mouse.vim
+source util/mouse.vim
func s:TermGuiColorsTest()
CheckNotMSWindows
" This only works with "iconv".
CheckFeature iconv
-source screendump.vim
+source util/screendump.vim
+
if !CanRunVimInTerminal()
throw 'Skipped: cannot make screendumps'
endif
CheckFeature terminal
-source screendump.vim
-source mouse.vim
+source util/screendump.vim
+source util/mouse.vim
let s:python = PythonProg()
let $PROMPT_COMMAND=''
CheckFeature terminal
-source screendump.vim
-source mouse.vim
+source util/screendump.vim
+source util/mouse.vim
let $PROMPT_COMMAND=''
CheckFeature terminal
-source screendump.vim
-source mouse.vim
+source util/screendump.vim
+source util/mouse.vim
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
let $PROMPT_COMMAND=''
" Test for sync buffer cwd with shell's pwd
func Test_terminal_sync_shell_dir()
CheckUnix
- " The test always use sh (see src/testdir/unix.vim).
+ " The test always use sh (see src/testdir/util/unix.vim).
" BSD's sh doesn't seem to play well with the OSC 7 escape sequence.
CheckNotBSD
CheckFeature terminal
-source shared.vim
-
func Test_terminal_redir_fails()
CheckUnix
CheckFeature textprop
-source screendump.vim
-import './vim9.vim' as v9
+source util/screendump.vim
+import './util/vim9.vim' as v9
func Test_proptype_global()
call prop_type_add('comment', {'highlight': 'Directory', 'priority': 123, 'start_incl': 1, 'end_incl': 1})
CheckFeature timers
-source screendump.vim
+source util/screendump.vim
func SetUp()
" The tests here use timers, thus are sensitive to timing.
" Test try-catch-finally exception handling
" Most of this was formerly in test49.
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
"-------------------------------------------------------------------------------
" Test environment {{{1
" Tests for the Tuple types
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
func TearDown()
" Run garbage collection after every test
" undo-able pieces. Do that by setting 'undolevels'.
" Also tests :earlier and :later.
-source screendump.vim
+source util/screendump.vim
func Test_undotree()
new
" Also test that a builtin function cannot be replaced.
" Also test for regression when calling arbitrary expression.
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
func Table(title, ...)
let ret = a:title
" Tests for user defined commands
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
-source screendump.vim
+source util/screendump.vim
" Test for <mods> in user defined commands
function Test_cmdmods()
" Tests for Unicode manipulations
-source screendump.vim
+source util/screendump.vim
" Visual block Insert adjusts for multi-byte char
func Test_visual_block_insert()
" Test Vim9 assignments
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
let s:appendToMe = 'xxx'
let s:addToMe = 111
" Test using builtin functions in the Vim9 script language.
-source screendump.vim
-import './vim9.vim' as v9
+source util/screendump.vim
+import './util/vim9.vim' as v9
" Test for passing too many or too few arguments to builtin functions
func Test_internalfunc_arg_error()
" Test Vim9 classes
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
def Test_class_basic()
# Class supported only in "vim9script"
" Test commands that are not compiled in a :def function
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
def Test_vim9cmd()
var lines =<< trim END
" Test the :disassemble command, and compilation as a side effect
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
func s:NotCompiled()
echo "not"
" Test Vim9 enums
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
" Test for parsing an enum definition
def Test_enum_parse()
" Tests for Vim9 script expressions
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
let g:cond = v:false
def FuncOne(arg: number): string
" Test various aspects of the Vim9 script language.
-import './vim9.vim' as v9
-source screendump.vim
+import './util/vim9.vim' as v9
+source util/screendump.vim
func Test_def_basic()
def SomeFunc(): string
" Test import/export of the Vim9 script language.
" Also the autoload mechanism.
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
let s:export_script_lines =<< trim END
vim9script
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
CheckFeature python3
def Test_python3_py3eval_locals()
" Test various aspects of the Vim9 script language.
-import './vim9.vim' as v9
-source screendump.vim
+import './util/vim9.vim' as v9
+source util/screendump.vim
def Test_vim9script_feature()
# example from the help, here the feature is always present
], 'E1144:')
v9.CheckScriptSuccess([
'vim9script',
- 'import "./vim9.vim" as v9',
+ 'import "./util/vim9.vim" as v9',
'function v9.CheckScriptSuccess # comment',
])
v9.CheckScriptFailure([
'vim9script',
- 'import "./vim9.vim" as v9',
+ 'import "./util/vim9.vim" as v9',
'function v9.CheckScriptSuccess# comment',
], 'E1048: Item not found in script: CheckScriptSuccess#')
" Test Vim9 type aliases
-import './vim9.vim' as v9
+import './util/vim9.vim' as v9
" Test for :type command to create type aliases
def Test_typealias()
" Most of this was formerly in test49.vim (developed by Servatius Brandt
" <Servatius.Brandt@fujitsu-siemens.com>)
-source script_util.vim
+source util/script_util.vim
"-------------------------------------------------------------------------------
" Test environment {{{1
func RunInNewVim(test, verify)
let init =<< trim END
set cpo-=C " support line-continuation in sourced script
- source script_util.vim
+ source util/script_util.vim
XpathINIT
XloopINIT
END
" Tests for various Visual modes.
-source screendump.vim
-import './vim9.vim' as v9
+source util/screendump.vim
+import './util/vim9.vim' as v9
func Test_block_shift_multibyte()
" Uses double-wide character.
-source window_manager.vim
+source util/window_manager.vim
CheckFeature wayland
CheckFeature wayland_clipboard
CheckFeature menu
-source screendump.vim
+source util/screendump.vim
func Test_add_remove_menu()
new
" Tests for window cmd (:wincmd, :split, :vsplit, :resize and etc...)
-source screendump.vim
+source util/screendump.vim
func Test_window_cmd_ls0_with_split()
set ls=0
" Is setup in Github Runner
unlet $XDG_CONFIG_HOME
- source setup_gui.vim
+ source util/setup_gui.vim
call GUISetUpCommon()
" This tests, that the GUI initialization file from
" Test for the xxd command
-source screendump.vim
+source util/screendump.vim
if empty($XXD) && executable('..\xxd\xxd.exe')
let s:xxd_cmd = '..\xxd\xxd.exe'
map! /tmp t:
cmap !rm !Delete all
-source setup.vim
+source util/setup.vim
-source shared.vim
-source term_util.vim
+source util/shared.vim
+source util/term_util.vim
" uses line-continuation
let s:cpo_save = &cpo
endfunc
" Command to check that making screendumps is supported.
-" Caller must source screendump.vim
+" Caller must source util/screendump.vim
command CheckScreendump call CheckScreendump()
func CheckScreendump()
let g:check_screendump_called = v:true
set shell=cmd.exe shellcmdflag=/D\ /c
endif
-source setup.vim
+source util/setup.vim
" Script header.
" The test values contains multibyte characters.
let script = [
- \ '" DO NOT EDIT: Generated with gen_opt_test.vim',
+ \ '" DO NOT EDIT: Generated with util/gen_opt_test.vim',
\ '" Used by test_options_all.vim.',
\ '',
\ 'scriptencoding utf-8',
" cd src
" # Edit Makefile to uncomment PROFILE_CFLAGS and PROFILE_LIBS
" make reconfig
-" ./vim --clean -S testdir/popupbounce.vim main.c
+" ./vim --clean -S testdir/util/popupbounce.vim main.c
" gprof vim gmon.out | vim -
" using line continuation
finish
endif
-source view_util.vim
+source util/view_util.vim
" When 'term' is changed some status requests may be sent. The responses may
" interfere with what is being tested. A short sleep is used to process any of
finish
endif
-source shared.vim
+source util/shared.vim
" For most tests we need to be able to run terminal Vim with 256 colors. On
" MS-Windows the console only has 16 colors and the GUI can't run in a
let g:tester_HOME = $HOME
endif
-source setup.vim
+source util/setup.vim
" Do not use any swap files
set noswapfile
-source setup.vim
+source util/setup.vim
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 1525,
/**/
1524,
/**/