[Tarantool-patches] [PATCH v2 luajit 00/26] More tests from LuaJIT-tests, part 1

Sergey Bronnikov sergeyb at tarantool.org
Thu Feb 1 19:32:45 MSK 2024


Hi, Sergey

there is a problem with running under ASAN:


cmake -S . -B build -DLUAJIT_USE_ASAN=ON

<snipped>

cmake --build build/ -t LuaJIT-tests

<snipped>

[100%] Linking C executable luajit
[100%] Built target luajit_static
Running LuaJIT-tests
==320737==ASan runtime does not come first in initial library list; you 
should either link runtime to your application or manually preload it 
with LD_PRELOAD.
gmake[3]: *** 
[test/LuaJIT-tests/CMakeFiles/LuaJIT-tests.dir/build.make:74: 
LuaJIT-tests] Error 1
gmake[2]: *** [CMakeFiles/Makefile2:1193: 
test/LuaJIT-tests/CMakeFiles/LuaJIT-tests.dir/all] Error 2
gmake[1]: *** [CMakeFiles/Makefile2:1200: 
test/LuaJIT-tests/CMakeFiles/LuaJIT-tests.dir/rule] Error 2
gmake: *** [Makefile:455: LuaJIT-tests] Error 2

cannot reproduce on tarantool/master


On 1/29/24 13:45, Sergey Kaplun wrote:
> This patchset enables most of the LuaJIT-tests related to FFI and
> testing of C libraries (cpptest, ctest). More tests (from the <misc>
> directory) will be enabled in the future series.
>
> FFI tests from the <unportable> directory aren't enabled because of their
> inconsistency, see also [1].
>
> This increases coverage up to 92.5%, see here [2].
>
> Branch: https://github.com/tarantool/luajit/tree/skaplun/gh-9398-more-luajit-tests
> Tarantool PR: https://github.com/tarantool/tarantool/pull/9603
> Related issues:
> * https://github.com/tarantool/tarantool/issues/9398
> * https://github.com/tarantool/tarantool/issues/7834
>
> [1]: https://github.com/LuaJIT/LuaJIT/pull/415
> [2]: https://coveralls.io/github/tarantool/luajit?branch=skaplun/gh-9398-more-luajit-tests
>
> Changes in the v2:
> * Introduce the AddTestLib macro to avoid copy-pasting. It only adds a
>    target with necessary flags without setting any variables.
> * <cpptest.cpp> is renamed to <libcpptest.cpp> for consistency with
>    <libctest.c>
> * Rename some tests with uninformative naming (like `call_10i` ->
>    `10 int args`)
> * Add adjusments of arguments for long calls (~10 arguments) to make them
>    comparable without changing test semantics.
> * Fix some typos
>
> Sergey Kaplun (26):
>    cmake: introduce AddTestLib macro
>    test: prepare lauxilarily libs for LuaJIT-tests
>    test: separate LuaJIT helpers from ffi_util.inc
>    test: enable <ffi_arith_ptr.lua> in LuaJIT-tests
>    test: enable <ffi_bitfield.lua> in LuaJIT-tests
>    test: enable <ffi_call.lua> in LuaJIT-tests
>    test: enable <ffi_callback.lua> in LuaJIT-tests
>    test: enable <ffi_const.lua> in LuaJIT-tests
>    test: enable <ffi_convert.lua> in LuaJIT-tests
>    test: enable <ffi_enum.lua> in LuaJIT-tests
>    test: enable <ffi_gcstep_recursive.lua>
>    test: enable <ffi_jit_arith.lua> in LuaJIT-tests
>    test: enable <ffi_jit_call.lua> in LuaJIT-tests
>    test: enable <ffi_jit_conv.lua> in LuaJIT-tests
>    test: enable <ffi_lex_number.lua> in LuaJIT-tests
>    test: enable <ffi_metatype.lua> in LuaJIT-tests
>    test: enable <ffi_new.lua> in LuaJIT-tests
>    test: enable <ffi_parse_array.lua> in LuaJIT-tests
>    test: enable <ffi_parse_basic.lua> in LuaJIT-tests
>    test: enable <ffi_parse_cdef.lua> in LuaJIT-tests
>    test: enable <ffi_parse_struct.lua> LuaJIT test
>    test: enable <ffi_tabov.lua> LuaJIT test
>    test: enable <lightud.lua> LuaJIT test
>    test: enable <api_call.lua> LuaJIT test
>    test: enable <catch_wrap.lua> LuaJIT test
>    test: enable <catch_cpp.lua> LuaJIT test
>
>   test/CMakeLists.txt                           |   3 +
>   test/LuaJIT-tests/CMakeLists.txt              |  45 ++-
>   test/LuaJIT-tests/common/fails.lua            |   3 +
>   test/LuaJIT-tests/common/ffi/checkfail.lua    |  14 +
>   test/LuaJIT-tests/common/ffi/checktypes.lua   |  15 +
>   test/LuaJIT-tests/common/ffi_util.inc         |  23 --
>   test/LuaJIT-tests/{misc => lang}/api_call.lua |  32 +-
>   .../{sysdep => lang}/catch_cpp.lua            |  36 +-
>   .../{misc => lang}/catch_wrap.lua             |  29 +-
>   test/LuaJIT-tests/lang/index                  |   4 +
>   test/LuaJIT-tests/lang/lightud.lua            |  89 +++++
>   test/LuaJIT-tests/lib/ffi/ffi_arith_ptr.lua   |  13 +-
>   test/LuaJIT-tests/lib/ffi/ffi_bitfield.lua    |   4 +-
>   test/LuaJIT-tests/lib/ffi/ffi_call.lua        | 185 +++++-----
>   test/LuaJIT-tests/lib/ffi/ffi_callback.lua    |  45 +--
>   test/LuaJIT-tests/lib/ffi/ffi_const.lua       |   4 +-
>   test/LuaJIT-tests/lib/ffi/ffi_convert.lua     |  35 +-
>   test/LuaJIT-tests/lib/ffi/ffi_enum.lua        |  11 +-
>   .../lib/ffi/ffi_gcstep_recursive.lua          |  27 +-
>   test/LuaJIT-tests/lib/ffi/ffi_jit_arith.lua   |  22 +-
>   test/LuaJIT-tests/lib/ffi/ffi_jit_call.lua    |  70 ++--
>   test/LuaJIT-tests/lib/ffi/ffi_jit_conv.lua    |  70 ++--
>   test/LuaJIT-tests/lib/ffi/ffi_lex_number.lua  |  72 ++--
>   test/LuaJIT-tests/lib/ffi/ffi_metatype.lua    |  16 +-
>   test/LuaJIT-tests/lib/ffi/ffi_new.lua         |  50 +--
>   test/LuaJIT-tests/lib/ffi/ffi_parse_array.lua | 106 +++---
>   test/LuaJIT-tests/lib/ffi/ffi_parse_basic.lua | 251 ++++++-------
>   test/LuaJIT-tests/lib/ffi/ffi_parse_cdef.lua  | 141 ++++----
>   .../LuaJIT-tests/lib/ffi/ffi_parse_struct.lua | 335 +++++++++---------
>   test/LuaJIT-tests/lib/ffi/ffi_tabov.lua       |  12 -
>   test/LuaJIT-tests/lib/ffi/index               |  18 +
>   test/LuaJIT-tests/misc/lightud.lua            |  88 -----
>   test/LuaJIT-tests/src/CMakeLists.txt          |  17 +
>   .../src/{cpptest.cpp => libcpptest.cpp}       |   4 +-
>   test/LuaJIT-tests/src/{ctest.c => libctest.c} |   4 +-
>   test/LuaJIT-tests/test.lua                    |   7 +-
>   .../PUC-Rio-Lua-5.1-tests/libs/CMakeLists.txt |  25 +-
>   test/cmake/AddTestLib.cmake                   |  28 ++
>   test/tarantool-tests/CMakeLists.txt           |  27 +-
>   test/tarantool-tests/ffi-tabov.test.lua       |  27 ++
>   40 files changed, 1086 insertions(+), 921 deletions(-)
>   create mode 100644 test/LuaJIT-tests/common/fails.lua
>   create mode 100644 test/LuaJIT-tests/common/ffi/checkfail.lua
>   create mode 100644 test/LuaJIT-tests/common/ffi/checktypes.lua
>   rename test/LuaJIT-tests/{misc => lang}/api_call.lua (79%)
>   rename test/LuaJIT-tests/{sysdep => lang}/catch_cpp.lua (75%)
>   rename test/LuaJIT-tests/{misc => lang}/catch_wrap.lua (71%)
>   create mode 100644 test/LuaJIT-tests/lang/lightud.lua
>   delete mode 100644 test/LuaJIT-tests/lib/ffi/ffi_tabov.lua
>   delete mode 100644 test/LuaJIT-tests/misc/lightud.lua
>   create mode 100644 test/LuaJIT-tests/src/CMakeLists.txt
>   rename test/LuaJIT-tests/src/{cpptest.cpp => libcpptest.cpp} (96%)
>   rename test/LuaJIT-tests/src/{ctest.c => libctest.c} (99%)
>   create mode 100644 test/cmake/AddTestLib.cmake
>   create mode 100644 test/tarantool-tests/ffi-tabov.test.lua
>


More information about the Tarantool-patches mailing list