mirror of
https://github.com/msva/lua-htmlparser.git
synced 2024-11-04 23:34:20 +00:00
added travis; moved rockspecs; tests and docs modified
This commit is contained in:
parent
06da2e960e
commit
a04ab7d9cd
42
.travis.yml
Normal file
42
.travis.yml
Normal file
@ -0,0 +1,42 @@
|
||||
language: c
|
||||
|
||||
sudo: false
|
||||
|
||||
env:
|
||||
global:
|
||||
- LUAROCKS=2.3.0
|
||||
matrix:
|
||||
- LUA=lua5.1
|
||||
- LUA=lua5.2
|
||||
- LUA=lua5.3
|
||||
- LUA=luajit # latest stable version (2.0.4)
|
||||
- LUA=luajit2.0 # current head of 2.0 branch
|
||||
- LUA=luajit2.1 # current head of 2.1 branch
|
||||
|
||||
#branches:
|
||||
# only:
|
||||
# - master
|
||||
|
||||
before_install:
|
||||
- source .travis/setenv_lua.sh
|
||||
- pip install --user cpp-coveralls
|
||||
- luarocks install Lua-cURL --server=https://luarocks.org/dev
|
||||
- luarocks install luacov-coveralls --server=https://luarocks.org/dev
|
||||
- luarocks install lunitx
|
||||
|
||||
install:
|
||||
- luarocks make rockspecs/htmlparser-scm-0.rockspec CFLAGS="-O2 -fPIC -ftest-coverage -fprofile-arcs" LIBFLAG="-shared --coverage"
|
||||
|
||||
script:
|
||||
- cd tst
|
||||
- lua -e "print(require'cURL'.version())"
|
||||
- lunit.sh init.lua
|
||||
|
||||
after_success:
|
||||
- coveralls -b .. -r .. -i ./src --dump c.report.json
|
||||
- luacov-coveralls -j c.report.json -v
|
||||
|
||||
notifications:
|
||||
email:
|
||||
on_success: change
|
||||
on_failure: always
|
15
.travis/platform.sh
Normal file
15
.travis/platform.sh
Normal file
@ -0,0 +1,15 @@
|
||||
if [ -z "${PLATFORM:-}" ]; then
|
||||
PLATFORM=$TRAVIS_OS_NAME;
|
||||
fi
|
||||
|
||||
if [ "$PLATFORM" == "osx" ]; then
|
||||
PLATFORM="macosx";
|
||||
fi
|
||||
|
||||
if [ -z "$PLATFORM" ]; then
|
||||
if [ "$(uname)" == "Linux" ]; then
|
||||
PLATFORM="linux";
|
||||
else
|
||||
PLATFORM="macosx";
|
||||
fi;
|
||||
fi
|
3
.travis/setenv_lua.sh
Normal file
3
.travis/setenv_lua.sh
Normal file
@ -0,0 +1,3 @@
|
||||
export PATH=${PATH}:$HOME/.lua:$HOME/.local/bin:${TRAVIS_BUILD_DIR}/install/luarocks/bin
|
||||
bash .travis/setup_lua.sh
|
||||
eval `$HOME/.lua/luarocks path`
|
122
.travis/setup_lua.sh
Normal file
122
.travis/setup_lua.sh
Normal file
@ -0,0 +1,122 @@
|
||||
#! /bin/bash
|
||||
|
||||
# A script for setting up environment for travis-ci testing.
|
||||
# Sets up Lua and Luarocks.
|
||||
# LUA must be "lua5.1", "lua5.2" or "luajit".
|
||||
# luajit2.0 - master v2.0
|
||||
# luajit2.1 - master v2.1
|
||||
|
||||
set -eufo pipefail
|
||||
|
||||
LUAJIT_VERSION="2.0.4"
|
||||
LUAJIT_BASE="LuaJIT-$LUAJIT_VERSION"
|
||||
|
||||
source .travis/platform.sh
|
||||
|
||||
LUA_HOME_DIR=$TRAVIS_BUILD_DIR/install/lua
|
||||
|
||||
LR_HOME_DIR=$TRAVIS_BUILD_DIR/install/luarocks
|
||||
|
||||
mkdir $HOME/.lua
|
||||
|
||||
LUAJIT="no"
|
||||
|
||||
if [ "$PLATFORM" == "macosx" ]; then
|
||||
if [ "$LUA" == "luajit" ]; then
|
||||
LUAJIT="yes";
|
||||
fi
|
||||
if [ "$LUA" == "luajit2.0" ]; then
|
||||
LUAJIT="yes";
|
||||
fi
|
||||
if [ "$LUA" == "luajit2.1" ]; then
|
||||
LUAJIT="yes";
|
||||
fi;
|
||||
elif [ "$(expr substr $LUA 1 6)" == "luajit" ]; then
|
||||
LUAJIT="yes";
|
||||
fi
|
||||
|
||||
mkdir -p "$LUA_HOME_DIR"
|
||||
|
||||
if [ "$LUAJIT" == "yes" ]; then
|
||||
|
||||
if [ "$LUA" == "luajit" ]; then
|
||||
curl --location https://github.com/LuaJIT/LuaJIT/archive/v$LUAJIT_VERSION.tar.gz | tar xz;
|
||||
else
|
||||
git clone https://github.com/LuaJIT/LuaJIT.git $LUAJIT_BASE;
|
||||
fi
|
||||
|
||||
cd $LUAJIT_BASE
|
||||
|
||||
if [ "$LUA" == "luajit2.1" ]; then
|
||||
git checkout v2.1;
|
||||
# force the INSTALL_TNAME to be luajit
|
||||
perl -i -pe 's/INSTALL_TNAME=.+/INSTALL_TNAME= luajit/' Makefile
|
||||
fi
|
||||
|
||||
make && make install PREFIX="$LUA_HOME_DIR"
|
||||
|
||||
ln -s $LUA_HOME_DIR/bin/luajit $HOME/.lua/luajit
|
||||
ln -s $LUA_HOME_DIR/bin/luajit $HOME/.lua/lua;
|
||||
|
||||
else
|
||||
|
||||
if [ "$LUA" == "lua5.1" ]; then
|
||||
curl http://www.lua.org/ftp/lua-5.1.5.tar.gz | tar xz
|
||||
cd lua-5.1.5;
|
||||
elif [ "$LUA" == "lua5.2" ]; then
|
||||
curl http://www.lua.org/ftp/lua-5.2.4.tar.gz | tar xz
|
||||
cd lua-5.2.4;
|
||||
elif [ "$LUA" == "lua5.3" ]; then
|
||||
curl http://www.lua.org/ftp/lua-5.3.2.tar.gz | tar xz
|
||||
cd lua-5.3.2;
|
||||
fi
|
||||
|
||||
# Build Lua without backwards compatibility for testing
|
||||
perl -i -pe 's/-DLUA_COMPAT_(ALL|5_2)//' src/Makefile
|
||||
make $PLATFORM
|
||||
make INSTALL_TOP="$LUA_HOME_DIR" install;
|
||||
|
||||
ln -s $LUA_HOME_DIR/bin/lua $HOME/.lua/lua
|
||||
ln -s $LUA_HOME_DIR/bin/luac $HOME/.lua/luac;
|
||||
|
||||
fi
|
||||
|
||||
cd $TRAVIS_BUILD_DIR
|
||||
|
||||
lua -v
|
||||
|
||||
LUAROCKS_BASE=luarocks-$LUAROCKS
|
||||
|
||||
curl --location http://luarocks.org/releases/$LUAROCKS_BASE.tar.gz | tar xz
|
||||
|
||||
cd $LUAROCKS_BASE
|
||||
|
||||
if [ "$LUA" == "luajit" ]; then
|
||||
./configure --lua-suffix=jit --with-lua-include="$LUA_HOME_DIR/include/luajit-2.0" --prefix="$LR_HOME_DIR";
|
||||
elif [ "$LUA" == "luajit2.0" ]; then
|
||||
./configure --lua-suffix=jit --with-lua-include="$LUA_HOME_DIR/include/luajit-2.0" --prefix="$LR_HOME_DIR";
|
||||
elif [ "$LUA" == "luajit2.1" ]; then
|
||||
./configure --lua-suffix=jit --with-lua-include="$LUA_HOME_DIR/include/luajit-2.1" --prefix="$LR_HOME_DIR";
|
||||
else
|
||||
./configure --with-lua="$LUA_HOME_DIR" --prefix="$LR_HOME_DIR"
|
||||
fi
|
||||
|
||||
make build && make install
|
||||
|
||||
ln -s $LR_HOME_DIR/bin/luarocks $HOME/.lua/luarocks
|
||||
|
||||
cd $TRAVIS_BUILD_DIR
|
||||
|
||||
luarocks --version
|
||||
|
||||
rm -rf $LUAROCKS_BASE
|
||||
|
||||
if [ "$LUAJIT" == "yes" ]; then
|
||||
rm -rf $LUAJIT_BASE;
|
||||
elif [ "$LUA" == "lua5.1" ]; then
|
||||
rm -rf lua-5.1.5;
|
||||
elif [ "$LUA" == "lua5.2" ]; then
|
||||
rm -rf lua-5.2.4;
|
||||
elif [ "$LUA" == "lua5.3" ]; then
|
||||
rm -rf lua-5.3.2;
|
||||
fi
|
@ -3,12 +3,12 @@
|
||||
<head>
|
||||
<title>Htmlparser LuaRock Readme</title>
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="Refresh" content="3; url=http://wscherphof.github.io/lua-htmlparser/" />
|
||||
<meta http-equiv="Refresh" content="3; url=http://msva.github.io/lua-htmlparser/" />
|
||||
</head>
|
||||
<body>
|
||||
<p>You are being redirected to the homepage of the
|
||||
<a href="http://wscherphof.github.io/lua-htmlparser/">Htmlparser LuaRock</a>.
|
||||
<a href="http://msva.github.io/lua-htmlparser/">Htmlparser LuaRock</a>.
|
||||
</p>
|
||||
<p>If you are not redirected after a few seconds, please click on the link above!</p>
|
||||
</body>
|
||||
</html>
|
||||
</html>
|
||||
|
@ -62,4 +62,4 @@
|
||||
</section>
|
||||
</section>
|
||||
</body>
|
||||
</html>
|
||||
</html>
|
||||
|
@ -1,4 +1,4 @@
|
||||
require("luarocks.loader")
|
||||
--require("luarocks.loader")
|
||||
-- Omit next line in actual module clients; it's only to support development of the module itself
|
||||
package.path = "../src/?.lua;" .. package.path
|
||||
local htmlparser = require("htmlparser")
|
||||
|
50
tst/.luacov
Normal file
50
tst/.luacov
Normal file
@ -0,0 +1,50 @@
|
||||
--- Global configuration file. Copy, customize and store in your
|
||||
-- project folder as '.luacov' for project specific configuration
|
||||
-- @class module
|
||||
-- @name luacov.defaults
|
||||
return {
|
||||
|
||||
-- default filename to load for config options if not provided
|
||||
-- only has effect in 'luacov.defaults.lua'
|
||||
configfile = ".luacov",
|
||||
|
||||
-- filename to store stats collected
|
||||
statsfile = "luacov.stats.out",
|
||||
|
||||
-- filename to store report
|
||||
reportfile = "luacov.report.json",
|
||||
|
||||
-- Run reporter on completion? (won't work for ticks)
|
||||
runreport = false,
|
||||
|
||||
-- Delete stats file after reporting?
|
||||
deletestats = false,
|
||||
|
||||
-- Patterns for files to include when reporting
|
||||
-- all will be included if nothing is listed
|
||||
-- (exclude overrules include, do not include
|
||||
-- the .lua extension)
|
||||
include = {
|
||||
"/foo$",
|
||||
"/foo/.+$",
|
||||
},
|
||||
|
||||
-- Patterns for files to exclude when reporting
|
||||
-- all will be included if nothing is listed
|
||||
-- (exclude overrules include, do not include
|
||||
-- the .lua extension)
|
||||
exclude = {
|
||||
},
|
||||
|
||||
-- configuration for luacov-coveralls reporter
|
||||
coveralls = {
|
||||
|
||||
-- debug = true;
|
||||
|
||||
pathcorrect = {
|
||||
{"^.-/share/lua/5.%d/", "src/lua/"};
|
||||
},
|
||||
|
||||
},
|
||||
|
||||
}
|
16
tst/init.lua
16
tst/init.lua
@ -1,7 +1,21 @@
|
||||
-- Omit next line in actual module clients; it's only to support development of the module itself
|
||||
package.path = "../src/?.lua;" .. package.path
|
||||
|
||||
local lunitx = require("lunitx")
|
||||
pcall(require, "luacov")
|
||||
|
||||
print("------------------------------------")
|
||||
print("Lua version: " .. (jit and jit.version or _VERSION))
|
||||
print("------------------------------------")
|
||||
print("")
|
||||
|
||||
local HAS_RUNNER = not not lunitx
|
||||
local TEST_CASE = lunitx.TEST_CASE
|
||||
|
||||
local LUA_VER = _VERSION
|
||||
local unpack, pow, bit32 = unpack, math.pow, bit32
|
||||
|
||||
local _ENV = TEST_CASE"some_test_case"
|
||||
|
||||
module("html", lunitx.testcase, package.seeall)
|
||||
|
||||
local htmlparser = require("htmlparser")
|
||||
|
Loading…
Reference in New Issue
Block a user