Problem: Could not complete when the user argument was not the begining of the filepath Solution: use custom smartcase filter and customlist instead of custom
Vimwiki Tests
This directory contains a test framework used to automatically test/verify Vimwiki functionality. It is based on the following tools:
Resources
- Vim patches
- Example test cases:
Building Docker Image
To build the Docker image run docker build -t vimwiki . from the Vimwiki
repository root (same location as the Dockerfile).
Running Tests
Manual Steps
Starting in the test directory run this command:
docker run -it --rm -v $PWD/../:/testplugin -v $PWD/../test:/home vimwiki vim_7.4.1099 -u test/vimrc -i NONE
This will open a vim instance in the docker container and then all tests
can be run with :Vader test/* or individual tests can be run.
Note: Substitute vim_7.4.1099 for any of the vim versions in the Dockerfile.
Automated Tests
The script in the test/ directory named run_test.sh can be used to
automatically run all tests for all installed vim versions. The vim/nvim
versions are parsed from the Dockerfile. This script will also run Vint for all
plugin source files. For more information run ./run_tests.sh -h.
Inside the container
- $USER->- vimtest: unprivileged => very hard to mess up things
- $HOME->- /home/vimtest: but it is readonly !
- $PWD->- /testplugin: mapped to vimwiki plugin root directory
For more information, read the base docker image
Known Issues
- neovim v0.2.x does not work correctly with Vader output from the docker
container. No test results are printed and an error message saying
Vim: Error reading input, exiting...- Probably need to look into this more and determine if the issue is Vader, Neovim, or Docker.
 
- Vader does not play nice with the location list. Tests that use the location
list should be placed in independent_runs/.
Notable Vim patches
- v7.3.831- getbufvaradded a default value
- v7.4.236add ability to check patch with has("patch-7.4.123")
- v7.4.1546sticky type checking removed (allow a variables type to change)
- v7.4.1989- filter()accepts a Funcref
- v7.4.2044lambda support added - see- :h expr-lambda
- v7.4.2120Added function "closure" argument
- v7.4.2137add- funcref()
- v8.0async jobs and timers