From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtpng3.m.smailru.net (smtpng3.m.smailru.net [94.100.177.149]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id 0E7D14696C3 for ; Wed, 8 Apr 2020 02:40:50 +0300 (MSK) Date: Wed, 8 Apr 2020 02:33:45 +0300 From: Igor Munkin Message-ID: <20200407233345.GD5713@tarantool.org> References: <391b2b4e4c8c6d4875f00bdd4dafa08999cc59af.1585312984.git.imun@tarantool.org> <78c7de63-85c7-efbb-3cca-d5d67e151d04@tarantool.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <78c7de63-85c7-efbb-3cca-d5d67e151d04@tarantool.org> Subject: Re: [Tarantool-patches] [PATCH 4/4] test: enable luajit-tap:lj-flush-on-trace tests List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Vladislav Shpilevoy Cc: tarantool-patches@dev.tarantool.org Vlad, Thanks for your review! On 05.04.20, Vladislav Shpilevoy wrote: > > if (NOT ${PROJECT_BINARY_DIR} STREQUAL ${PROJECT_SOURCE_DIR}) > > diff --git a/test/app-tap/lj-flush-on-trace.test.lua b/test/app-tap/lj-flush-on-trace.test.lua > > new file mode 100755 > > index 000000000..70b7bd9a2 > > --- /dev/null > > +++ b/test/app-tap/lj-flush-on-trace.test.lua > > @@ -0,0 +1,30 @@ > > +#!/usr/bin/env tarantool > > + > > +local tap = require('tap') > > + > > +local test = tap.test('lj-flush-on-trace') > > + > > +local cmd = string.gsub( > > + 'LUA_CPATH=$/?.so LD_LIBRARY_PATH=$ tarantool 2>&1 $/test.lua %d %d', > > + '%$', os.getenv('BUILDDIR') .. '/test/luajit-tap/lj-flush-on-trace') > > + > > +local checks = { > > + { hotloop = 1, trigger = 1, success = true }, > > + { hotloop = 1, trigger = 2, success = false }, > > +} > > + > > +test:plan(#checks) > > + > > +for _, ch in pairs(checks) do > > + local res > > + local proc = io.popen(cmd:format(ch.hotloop, ch.trigger)) > > + for s in proc:lines('*l') do res = s end > > + assert(res, 'proc:lines failed') > > This file is exactly the same as the other file for running a > luajit test in the previous commit. I propose you to move this to > a separate file, which would provide API to run arbitrary test via > io.popen. Unless this won't be dropped if you find a way to make > the new luajit tests runable via test-run as is. Sounds rational. They are not the same but quite similar (the difference is only in the result values). I guess I can do it in scope of #4862[1] if you're OK with it. > > > + if ch.success then > > + test:is(res, 'OK') > > + else > > + test:is(res, 'JIT mode change is detected while executing the trace') > > + end > > +end > > + > > +os.exit(test:check() and 0 or 1) > > [1]: https://github.com/tarantool/tarantool/issues/4862 -- Best regards, IM