Skip to content
This repository has been archived by the owner on Jan 13, 2021. It is now read-only.

Commit

Permalink
Merge pull request #298 from Lukasa/better-testing
Browse files Browse the repository at this point in the history
Fixup bad test behaviour on travis.
  • Loading branch information
Lukasa committed Dec 7, 2016
2 parents 1f8e53f + 654d4a4 commit b7d7a84
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 54 deletions.
16 changes: 1 addition & 15 deletions .travis.yml
Expand Up @@ -11,29 +11,15 @@ env:
- TEST_RELEASE=false HYPER_FAST_PARSE=true
- TEST_RELEASE=true HYPER_FAST_PARSE=false
- TEST_RELEASE=true HYPER_FAST_PARSE=true
- NGHTTP2=true

matrix:
allow_failures:
- env: TEST_RELEASE=true HYPER_FAST_PARSE=true
- env: TEST_RELEASE=true HYPER_FAST_PARSE=false
exclude:
- env: NGHTTP2=true
python: "pypy-5.3.1"

install:
- ".travis/install.sh"
before_script: "flake8 --max-complexity 15 --exclude 'hyper/packages/*' hyper test"

script:
- >
if [[ "$TEST_RELEASE" == true ]]; then
py.test test_release.py
else
if [[ $TRAVIS_PYTHON_VERSION == pypy ]]; then
py.test test/
else
coverage run -m py.test test/
coverage report
fi
fi
- ".travis/run.sh"
39 changes: 0 additions & 39 deletions .travis/install.sh
Expand Up @@ -3,45 +3,6 @@
set -e
set -x

if [[ "$NGHTTP2" = true ]]; then
# GCC 4.6 seems to cause problems, so go straight to 4.8.
sudo add-apt-repository --yes ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install g++-4.8 libstdc++-4.8-dev
export CXX="g++-4.8" CC="gcc-4.8"
$CC --version

# Install nghttp2. Right now I haven't built a PPA for this so we have to
# do it from source, which kinda sucks. First, install a ton of
# prerequisite packages.
sudo apt-get install autoconf automake autotools-dev libtool pkg-config \
zlib1g-dev libcunit1-dev libssl-dev libxml2-dev \
libevent-dev libjansson-dev libjemalloc-dev
pip install cython

# Now, download and install nghttp2's latest version.
git clone https://github.com/tatsuhiro-t/nghttp2.git
cd nghttp2
DIR=`pwd`
export PYTHONPATH="$DIR/lib/python${TRAVIS_PYTHON_VERSION}/site-packages"
mkdir -p $PYTHONPATH
autoreconf -i
automake
autoconf
./configure --disable-threads --prefix=`pwd`
make
make install

# The makefile doesn't install into the active virtualenv. Install again.
cd python
python setup.py install
cd ../..

# Let's try ldconfig.
sudo sh -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/libnghttp2.conf'
sudo ldconfig
fi

if [[ "$HYPER_FAST_PARSE" = true ]]; then
pip install pycohttpparser~=1.0
fi
Expand Down
15 changes: 15 additions & 0 deletions .travis/run.sh
@@ -0,0 +1,15 @@
#!/bin/bash

set -e
set -x

if [[ "$TEST_RELEASE" == true ]]; then
py.test test_release.py
else
if [[ $TRAVIS_PYTHON_VERSION == pypy ]]; then
py.test test/
else
coverage run -m py.test test/
coverage report
fi
fi

0 comments on commit b7d7a84

Please sign in to comment.