[Tarantool-patches] [PATCH luajit v3 03/29] test: adapt PUC-Rio suite for out-of-source build
Sergey Kaplun
skaplun at tarantool.org
Wed Apr 14 16:54:33 MSK 2021
Hi, Igor!
Thanks for the review!
I see fixups on branch and they LGTM.
AFAIU, do you want to squash them by yourself?
On 14.04.21, Igor Munkin wrote:
> Sergey,
>
> Thanks for the patch! LGTM with the following nits: I fixed them on your
> branch[1] and guess no re-testing is needed.
>
> On 13.04.21, Sergey Kaplun wrote:
> > The redefined `dofile()` function failed to find the test file to load,
> > when tests are run out-of-source. So, fullpath is detected considering
> > `arg[0]` value. Moreover, some tests use `loadfile()` instead, so their
> > argument has to be adjusted to the full path to the files.
> >
> > Usage of functions invoking source test files was changed to
> > `_loadfile()` and `_dofile()` correspondingly. They equal
>
> Typo: s/They equal/They equal to/.
>
> > `loadfile()` and `dofile()` by default and can be overloaded via running
> > lua code from LUAJIT_TEST_INIT. This patch introduces the
>
> Typo: s/lua/Lua/.
>
> > <test/luajit-test-init.lua> file to be executed before tests and
> > redefines the functions considering the path from `arg[0]` variable.
> >
> > Part of tarantool/tarantool#5845
> > Part of tarantool/tarantool#4473
> > ---
> > CMakeLists.txt | 4 +--
> > test/PUC-Rio-Lua-5.1-tests/all.lua | 51 +++++++++++++++++-------------
> > test/luajit-test-init.lua | 18 +++++++++++
> > 3 files changed, 49 insertions(+), 24 deletions(-)
> > create mode 100644 test/luajit-test-init.lua
> >
> > diff --git a/CMakeLists.txt b/CMakeLists.txt
> > index eb562923..df82d57c 100644
> > --- a/CMakeLists.txt
> > +++ b/CMakeLists.txt
> > @@ -302,8 +302,8 @@ set(LUAJIT_TEST_BINARY ${LUAJIT_BINARY} CACHE STRING
> > # tweaked, the introduced option can be used.
> > # XXX: The default behaviour is nop, so /dev/null is the best
>
> Comment need to be adjusted.
>
> > # option for this.
> > -set(LUAJIT_TEST_INIT "/dev/null" CACHE STRING
> > - "Lua code need to be run before tests are started. Default is nop."
> > +set(LUAJIT_TEST_INIT "${PROJECT_SOURCE_DIR}/test/luajit-test-init.lua" CACHE STRING
> > + "Lua code need to be run before tests are started."
> > )
> >
> > add_subdirectory(test)
>
> <snipped>
>
> > diff --git a/test/luajit-test-init.lua b/test/luajit-test-init.lua
> > new file mode 100644
> > index 00000000..aadd15af
> > --- /dev/null
> > +++ b/test/luajit-test-init.lua
> > @@ -0,0 +1,18 @@
> > +-- XXX: PUC Rio Lua 5.1 test suite checks that global variable
> > +-- `_loadfile()` exists and use it for code loading from test
>
> Typo: s/use/uses/.
>
> > +-- files If the variable is not defined then suite uses
>
> Typo: s/files/files./.
>
> > +-- `loadfile()` as default. Same for the `_dofile()`.
> > +
> > +-- XXX: Some tests in PUC Rio Lua 5.1 test suite clean `arg`
> > +-- variable, so evaluate this once and use later.
> > +local path_to_sources = arg[0]:gsub("[^/]+$", "")
> > +
> > +-- luacheck: no global
> > +function _loadfile(filename)
> > + return loadfile(path_to_sources..filename)
> > +end
> > +
> > +-- luacheck: no global
> > +function _dofile(filename)
> > + return dofile(path_to_sources..filename)
> > +end
> > --
> > 2.31.0
> >
>
> [1]: https://github.com/tarantool/luajit/commit/c28985b
>
> --
> Best regards,
> IM
--
Best regards,
Sergey Kaplun
More information about the Tarantool-patches
mailing list