ZyX
bac870433b
unittests: Do not unref partial which is owned by Callback structure
2017-04-09 03:36:17 +03:00
ZyX
44cd4e63f5
unittests: Use Neovim memory allocation for vimconv_T
...
Not sure whether this is going to fix things though, but core dump does not
contain Neovim functions in stack in this case.
2017-04-09 03:36:17 +03:00
ZyX
94c1af7c41
unittests: Do not gc what is already freed
2017-04-09 03:36:17 +03:00
ZyX
dc9722326e
unittests: Do not alter p_enc in decode unit test
2017-04-08 19:20:41 +03:00
ZyX
654dd15bb8
unittests: Fix testlint failure
2017-04-07 00:46:52 +03:00
ZyX
271df03fa4
unittests: Force GC, fix GC failures in typval_spec
2017-04-06 07:29:15 +03:00
ZyX
114eaa15f0
eval/typval,api/buffer: Fix review comments
2017-03-29 10:08:46 +03:00
ZyX
58e34e8d99
eval/typval: Allow NULL dict as tv_dict_get_callback() argument
...
Also removes NULL key input: tv_dict_find() does not allow this.
2017-03-29 10:08:46 +03:00
ZyX
8daf756fb6
unittests: Fix linter errors
2017-03-29 10:08:46 +03:00
ZyX
7826ee1c03
unittests: Add tv_get_string* tests
2017-03-29 10:08:46 +03:00
ZyX
e08b27ba4a
unittests: Add tv_get number tests
2017-03-29 10:08:46 +03:00
ZyX
4536c064e4
unittests: Move tv_dict_add* tests to a proper describe() block
2017-03-29 10:08:46 +03:00
ZyX
49195063fd
unittests: Add tv_check… tests
2017-03-29 10:08:46 +03:00
ZyX
389274bef7
unittests: Add tv_equal() tests
2017-03-29 10:08:46 +03:00
ZyX
630ff33dc1
unittests: Test locks section
2017-03-29 10:08:46 +03:00
ZyX
ed4948a933
unittests: Test tv_copy()
2017-03-29 10:08:46 +03:00
ZyX
f0bbd1e825
unittests: Add tests for tv_clear()
2017-03-29 10:08:46 +03:00
ZyX
e43de6bb3e
unittests: Add test for tv_dict_set_keys_readonly
2017-03-29 10:08:45 +03:00
ZyX
368a61c525
unittests: Add tv_dict_copy tests
2017-03-29 10:08:45 +03:00
ZyX
8b9a1fbf7a
unittests: Add tests for tv_dict_extend
2017-03-29 10:08:45 +03:00
ZyX
4987850cac
unittests: Add tv_dict_clear tests
2017-03-29 10:08:45 +03:00
ZyX
270a3889af
unittests: Add tv_dict_add* unit tests
...
Also fixes incorrect location of `tv_dict_add` function and three bugs in other
functions:
1. `tv_dict_add_list` may free list it does not own (vim/vim#1555 ).
2. `tv_dict_add_dict` may free dictionary it does not own (vim/vim#1555 ).
3. `tv_dict_add_dict` ignores `key_len` argument.
2017-03-29 10:08:45 +03:00
ZyX
bc87d23c28
unittests: Add tests for dictionary indexing
2017-03-29 10:08:45 +03:00
ZyX
5ce6243241
unittests: Enable tv_list_join tests back
...
Unable to reproduce the problem on Mac OS X Sierra VPS, need to check whether it
is reproducible on travis.
2017-03-29 10:08:45 +03:00
ZyX
52e226ff74
unittests: Disable tv_list_join test on Mac OS only
2017-03-29 10:08:45 +03:00
ZyX
38dd81c136
eval/typval: Fix SEGV in test_alot.vim test
2017-03-29 10:08:45 +03:00
ZyX
6c622ed08b
unittests: Add tv_dict_item_{add,remove} tests
2017-03-29 10:08:45 +03:00
ZyX
ffaf7c7521
unittests: Add tv_dict_item_{alloc,free} tests
2017-03-29 10:08:45 +03:00
ZyX
4c3be98db9
unittests: Add tv_dict_watcher_{add,remove} tests
2017-03-29 10:08:45 +03:00
ZyX
140174669e
unittests: Run tv_list_join tests in case it stopped failing
2017-03-29 10:08:45 +03:00
ZyX
4bcee96347
*: Fix some Windows-specific warnings
...
Also fixed an error in path_fnamecmp().
2017-03-29 10:08:42 +03:00
ZyX
56e51033ab
unittests: Add tests for tv_list_idx_of_item
2017-03-29 10:08:06 +03:00
ZyX
e5edf07ec4
unittests: Add tests for tv_list_find*() functions
...
Additional modifications:
- More `const` qualifiers in tested functions.
- `tv_list_find_str()` second argument is more in-line with other
`tv_list_find*()` functions.
2017-03-29 10:08:06 +03:00
ZyX
b3672ae2fc
eval/typval: Add tv_list_equal() tests, compare NULL lists equal
2017-03-29 10:08:06 +03:00
ZyX
4f9e784427
unittests: Test tv_list_join()
2017-03-29 10:08:06 +03:00
ZyX
cf45c7bb05
unittests: Fix tests crash
...
Tests crash at some point without
- `after_each(collectgarbage)` right before “typval.c list copy() copies list
correctly and converts items” test.
- Commenting out that test.
- Adding `collectgarbage()` after the test (what actually this commit does).
Adding `collectgarbage()` to top-level `after_each` block right after
`restore_allocators` makes running this file crash even if it is run alone.
2017-03-29 10:08:06 +03:00
ZyX
7ceebacb3f
eval/typval,tests: Fix extending list with itself, add tests
...
Adds unit test for tv_list_extend and regression test for extend() VimL
function.
2017-03-29 10:08:06 +03:00
ZyX
56e4c2f67e
unittests: Test tv_list_concat()
2017-03-29 10:08:06 +03:00
ZyX
9898f36aa3
unittests: Test tv_list_copy
...
Also found some bugs:
1. var_item_copy() always fails to copy v:_null_list and v:_null_dict. Fixing
this should mean fixing `deepcopy(v:_null_list)` which should’ve been, but
was not listed in #4615 . This also fixes `deepcopy(v:_null_dict)`.
2. var_item_copy() crashes when trying to copy NULL string with `conv != NULL`.
3. `conv` argument is ignored when copying list unless `deep` is true, but it
was not reflected in documentation.
4. `tv_dict_item_alloc_len()` allocated more memory then needed.
5. typvalt2lua was not able to handle self-referencing containers.
2017-03-29 10:08:06 +03:00
ZyX
9b8beaff02
unittests: Add tests for tv_list_insert*()/…append*() functions
2017-03-29 10:08:06 +03:00
ZyX
be360d8841
unittests: Add tests for tv_list_insert()
2017-03-29 10:08:06 +03:00
ZyX
d2639e1e1d
unittests: Add tests for list watchers and list alloc/free/unref
2017-03-29 10:08:06 +03:00
ZyX
a394167177
unittests: Test tv_list_item_\* functions
...
To check that memory is free()d correctly.
2017-03-29 10:08:06 +03:00
ZyX
2ad4fba46d
eval: Move copy_tv to eval/typval
2017-03-29 10:08:06 +03:00
ZyX
5df35297f8
eval: Remove eval_expr() completely
2017-03-29 10:08:05 +03:00
ZyX
e18a578308
*: Move some dictionary functions to typval.h and use char*
...
Also fixes buffer reusage in setmatches() and complete().
2017-03-29 10:07:42 +03:00
ZyX
fb146e80aa
eval: Split eval.c into smaller files
2017-03-29 10:05:06 +03:00
ZyX
8ef6cfa6ac
unittests: Fix linter errors
2017-03-11 23:48:16 +03:00
ZyX
e2a578f40d
unittests: Do not import libnvim or headers in main process
...
Slows down unit tests much, but gets rid of as much preserved state as possible.
2017-03-11 23:23:49 +03:00
ZyX
9400466282
unittests: Check core dumps in after_each, like in functests
2017-03-11 23:23:49 +03:00