diff options
author | Daniel Silverstone <dsilvers@digital-scurf.org> | 2017-03-04 16:08:27 +0000 |
---|---|---|
committer | Daniel Silverstone <dsilvers@digital-scurf.org> | 2017-03-04 17:35:18 +0000 |
commit | b609d07be3b37f81f5c05ae56bd427d16bb6f5c9 (patch) | |
tree | c38a7b0c0bd126e989cb7582a1f9fbd30333adb5 /lib | |
parent | f2f5b4e6229532f3ba69e9f32bc3305e37b20f4c (diff) | |
download | gitano-b609d07be3b37f81f5c05ae56bd427d16bb6f5c9.tar.gz |
adds support for coverage testing
Diffstat (limited to 'lib')
-rw-r--r-- | lib/gitano/coverage.lua.in | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/lib/gitano/coverage.lua.in b/lib/gitano/coverage.lua.in new file mode 100644 index 0000000..65d7682 --- /dev/null +++ b/lib/gitano/coverage.lua.in @@ -0,0 +1,52 @@ +-- gitano.coverage +-- +-- Coverage generation for when running Gitano under test. +-- NOTE: Not to be installed as part of Gitano, not to be loaded from the +-- top level gitano module +-- +-- Copyright 2017 Daniel Silverstone <dsilvers@digital-scurf.org> +-- All rights reserved. +-- +-- Redistribution and use in source and binary forms, with or without +-- modification, are permitted provided that the following conditions +-- are met: +-- 1. Redistributions of source code must retain the above copyright +-- notice, this list of conditions and the following disclaimer. +-- 2. Redistributions in binary form must reproduce the above copyright +-- notice, this list of conditions and the following disclaimer in the +-- documentation and/or other materials provided with the distribution. +-- 3. Neither the name of the author nor the names of their contributors +-- may be used to endorse or promote products derived from this software +-- without specific prior written permission. +-- +-- THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +-- ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +-- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +-- ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +-- FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +-- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +-- OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +-- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +-- LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +-- OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +-- SUCH DAMAGE. +-- + +local ok, runner = pcall(require, "luacov.runner") + +local luxio = require("luxio") + +local conf = assert(loadfile("@@.luacov@@"))() + +local function begin(basepath, part) + if not ok then return end + basepath = basepath or "./" + local pidstr = (".%d"):format(luxio.getpid()) + part = (part or "general") .. pidstr + conf.statsfile = basepath .. "luacov.stats-" .. part .. ".out" + runner.init(conf) +end + +return { + begin = begin, +} |