From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from [87.239.111.99] (localhost [127.0.0.1]) by dev.tarantool.org (Postfix) with ESMTP id 6D38F7346C0; Thu, 1 Feb 2024 18:45:57 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 6D38F7346C0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tarantool.org; s=dev; t=1706802357; bh=9DsZr/IC2QrkdRXK1LX36sThZmjUPu0KR/SEUr+MtL0=; h=Date:To:Cc:References:In-Reply-To:Subject:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=FCCQgCbyyvetMJOBBYtxaPIhXfS8dTxqMG+NP2YJc/a7m5VKpHoOQwWNqFJ5+2O3E AsqFtQiMM16OzUtkm4SYMaQ4dDdgMAQP6iIqDV2dRAHCkNULPQaYczkVyFawDAqYXj k0GcSIpmDFLV3mlPEWYDQIFeChuvX/0C/W3uvGac= Received: from smtp33.i.mail.ru (smtp33.i.mail.ru [95.163.41.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id D76CE7346C0 for ; Thu, 1 Feb 2024 18:45:55 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org D76CE7346C0 Received: by smtp33.i.mail.ru with esmtpa (envelope-from ) id 1rVZGE-00000008mPw-3JDW; Thu, 01 Feb 2024 18:45:55 +0300 Message-ID: <5024b3a7-5ee9-494d-a2f5-c7036202f18c@tarantool.org> Date: Thu, 1 Feb 2024 18:45:54 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Content-Language: en-US To: Sergey Kaplun , Maxim Kokryashkin Cc: tarantool-patches@dev.tarantool.org References: <98fb92f07dcd2879a423006642f2bdcd4acfd9f2.1706520765.git.skaplun@tarantool.org> In-Reply-To: <98fb92f07dcd2879a423006642f2bdcd4acfd9f2.1706520765.git.skaplun@tarantool.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Mailru-Src: smtp X-4EC0790: 10 X-7564579A: EEAE043A70213CC8 X-77F55803: 4F1203BC0FB41BD93C58C36AA2E996499EFE771C80A3C579767E15D2D4E86957182A05F5380850404C228DA9ACA6FE27736F62169EFF823CC7A4B249DE6549FD0B84044A8A9FD56569CB7D45CEAE1FADF387DE8544A20E12 X-7FA49CB5: FF5795518A3D127A4AD6D5ED66289B5278DA827A17800CE79961E86438F5BDAEEA1F7E6F0F101C67BD4B6F7A4D31EC0BCC500DACC3FED6E28638F802B75D45FF8AA50765F79006373513C06CCDD4732A8638F802B75D45FF36EB9D2243A4F8B5A6FCA7DBDB1FC311F39EFFDF887939037866D6147AF826D8A6E7C9146064D3F1A7D730D0B1EB4FBE1A8C8922BC1714AECC7F00164DA146DAFE8445B8C89999728AA50765F7900637F924B32C592EA89F389733CBF5DBD5E9C8A9BA7A39EFB766F5D81C698A659EA7CC7F00164DA146DA9985D098DBDEAEC82FFDA4F57982C5F4F6B57BC7E6449061A352F6E88A58FB86F5D81C698A659EA73AA81AA40904B5D9A18204E546F3947C4D3DDB508812D90003F1AB874ED890284AD6D5ED66289B523666184CF4C3C14F6136E347CC761E07725E5C173C3A84C3D50D4057CCB9F19BBA3038C0950A5D36B5C8C57E37DE458B330BD67F2E7D9AF16D1867E19FE14079C09775C1D3CA48CFE478A468B35FE7671DD303D21008E298D5E8D9A59859A8B6B372FE9A2E580EFC725E5C173C3A84C3E83E68DE7309FD8D35872C767BF85DA2F004C90652538430E4A6367B16DE6309 X-B7AD71C0: 6FEFE4C63DFE2D85718F43753FD9AD21390936EE2A242988633761F9DFDC81E96F7E66AAB408C501F5A36F93C229E567 X-C1DE0DAB: 0D63561A33F958A5E0742BF51AA81ADB5002B1117B3ED696AB228FDE0EAABB9C1A1B8FE1FED62FE8823CB91A9FED034534781492E4B8EEAD3B72D73EA5828B68BDAD6C7F3747799A X-C8649E89: 1C3962B70DF3F0AD75DCE07D45A749953FED46C3ACD6F73ED3581295AF09D3DF87807E0823442EA2ED31085941D9CD0AF7F820E7B07EA4CF1CE9779A04F63FB34286DA8C81C4622481DC05EC315F06F5BA99C9CE8A3BA79F715D154A38A044DCBAF4CF3B87E910B1A6E8EE7C84EA47427A1DEC1D5FC42C7BE25BCB1FB7C18D065F4332CA8FE04980913E6812662D5F2AB9AF64DB4688768036DF5FE9C0001AF333F2C28C22F508233FCF178C6DD14203 X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5ycPtXkTV4k65bRjmOUUP8cvGozZ33TWg5HZplvhhXbhDGzqmQDTd6OAevLeAnq3Ra9uf7zvY2zzsIhlcp/Y7m53TZgf2aB4JOg4gkr2biojKdLLj0Q7SP+CXHkX3VW/XQ== X-Mailru-Sender: C4F68CFF4024C8867DFDF7C7F2588458F6B2B4F8A20B0C52741D06F8E7BD5C49E7FCFF9B2DA3A6831023AF69CF04BCC8645D15D82EE4B272BD6E4642A116CA93524AA66B5ACBE6721EF430B9A63E2A504198E0F3ECE9B5443453F38A29522196 X-Mras: Ok Subject: Re: [Tarantool-patches] [PATCH v2 luajit 03/26] test: separate LuaJIT helpers from ffi_util.inc X-BeenThere: tarantool-patches@dev.tarantool.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Sergey Bronnikov via Tarantool-patches Reply-To: Sergey Bronnikov Errors-To: tarantool-patches-bounces@dev.tarantool.org Sender: "Tarantool-patches" Hi, Sergey thanks for the patch! LGTM with a minor comment below On 1/29/24 13:45, Sergey Kaplun wrote: > This patch moves common helpers from > into separate files by analogy with . The > `include()` helper isn't touched since it is used in system dependend typo: dependent? > tests, which won't be modified for now. > > Part of tarantool/tarantool#9398 > --- > 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 --------------------- > 4 files changed, 32 insertions(+), 23 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 > > diff --git a/test/LuaJIT-tests/common/fails.lua b/test/LuaJIT-tests/common/fails.lua > new file mode 100644 > index 00000000..d555a2b5 > --- /dev/null > +++ b/test/LuaJIT-tests/common/fails.lua > @@ -0,0 +1,3 @@ > +return function(f, ...) > + if pcall(f, ...) ~= false then error("failure expected", 2) end > +end > diff --git a/test/LuaJIT-tests/common/ffi/checkfail.lua b/test/LuaJIT-tests/common/ffi/checkfail.lua > new file mode 100644 > index 00000000..d3ca74e8 > --- /dev/null > +++ b/test/LuaJIT-tests/common/ffi/checkfail.lua > @@ -0,0 +1,14 @@ > +local ffi = require("ffi") > + > +-- Checker that takes an array of strings that should represent > +-- different invalid CTypes (a more common pattern). Also, the > +-- second argument may be also the `loadstring` function to check > +-- invalid literals or `ffi.cdef` to check invalid C definitions. > +return function(t, f) > + f = f or ffi.typeof > + for i=1,1e9 do > + local tp = t[i] > + if not tp then break end > + assert(pcall(f, tp) == false, tp) > + end > +end > diff --git a/test/LuaJIT-tests/common/ffi/checktypes.lua b/test/LuaJIT-tests/common/ffi/checktypes.lua > new file mode 100644 > index 00000000..c995d667 > --- /dev/null > +++ b/test/LuaJIT-tests/common/ffi/checktypes.lua > @@ -0,0 +1,15 @@ > +local ffi = require("ffi") > + > +-- Checker that takes an array with the following each 3 elements: > +-- 1) Sizeof for the given C type to be checked. > +-- 2) Alignof for the given C type to be checked. > +-- 3) String representing the C type. > +return function(t) > + for i=1,1e9,3 do > + local tp = t[i+2] > + if not tp then break end > + local id = ffi.typeof(tp) > + assert(ffi.sizeof(id) == t[i], tp) > + assert(ffi.alignof(id) == t[i+1], tp) > + end > +end > diff --git a/test/LuaJIT-tests/common/ffi_util.inc b/test/LuaJIT-tests/common/ffi_util.inc > index 1eee8dd9..9604d7b0 100644 > --- a/test/LuaJIT-tests/common/ffi_util.inc > +++ b/test/LuaJIT-tests/common/ffi_util.inc > @@ -4,29 +4,6 @@ > > local ffi = require("ffi") > > -function checkfail(t, f) > - f = f or ffi.typeof > - for i=1,1e9 do > - local tp = t[i] > - if not tp then break end > - assert(pcall(f, tp) == false, tp) > - end > -end > - > -function checktypes(t) > - for i=1,1e9,3 do > - local tp = t[i+2] > - if not tp then break end > - local id = ffi.typeof(tp) > - assert(ffi.sizeof(id) == t[i], tp) > - assert(ffi.alignof(id) == t[i+1], tp) > - end > -end > - > -function fails(f, ...) > - if pcall(f, ...) ~= false then error("failure expected", 2) end > -end > - > local incroot = os.getenv("INCROOT") or "/usr/include" > local cdefs = os.getenv("CDEFS") or "" >