view src/testdir/README.txt @ 8821:0bab7b98e930 v7.4.1698

commit https://github.com/vim/vim/commit/298c65971e884666d57c32bff6b730d517d9dc30 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Apr 2 22:24:20 2016 +0200 patch 7.4.1698 Problem: Two tests fail when running tests with MinGW. (Michael Soyka) Solution: Convert test_getcwd.ok test_wordcount.ok to unix fileformat.
author Christian Brabandt <cb@256bit.org>
date Sat, 02 Apr 2016 22:30:04 +0200
parents 26f555e9aab1
children ea504064c996
line wrap: on
line source

This directory contains tests for various Vim features.

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.

The numbered tests are older, we have switched to named tests.

And then you can chose between a new style test, which is a Vim script, or an
old style test, which uses Normal mode commands.  Use a new style test if you
can.


TO ADD A NEW STYLE TEST:

1) Create a test_<subject>.vim file.
2) Add test_<subject>.vim to NEW_TESTS in Make_all.mak in alphabetical order.
3) Use make test_<subject>.res to run a single test in src/testdir/.
   Use make test_<subject>  to run a single test in src/.
4) Also add an entry in src/Makefile.

What you can use (see test_assert.vim for an example):
- Call assert_equal(), assert_true() and assert_false().
- Use try/catch to check for exceptions.
- Use alloc_fail() to have memory allocation fail. This makes it possible to
  to check memory allocation failures are handled gracefully.  You need to
  change the source code to add an ID to the allocation.  Update LAST_ID_USED
  above alloc_id() to the highest ID used.
- Use disable_char_avail_for_testing(1) if char_avail() must return FALSE for
  a while.  E.g. to trigger the CursorMovedI autocommand event.
  See test_cursor_func.vim for an example


TO ADD AN OLD STYLE TEST:

1) Create test_<subject>.in and test_<subject>.ok files.
2) Add test_<subject>.out to SCRIPTS_ALL in Make_all.mak in alphabetical order.
3) Use make test_<subject>.out to run a single test in src/testdir/.
   Use make test_<subject>  to run a single test in src/.
4) Also add an entry in src/Makefile.

Keep in mind that the files are used as if everything was typed:
- To add comments use:   :"  (that's an Ex command comment)
- A line break is like pressing Enter.  If that happens on the last line
  you'll hear a beep!