]> git.saurik.com Git - apt.git/blobdiff - .travis.yml
travis: Add coverage testing using codecov.io
[apt.git] / .travis.yml
index a20018a7975d63bac5d83b49109fa7f56f22cbd3..af84b67dd57f4c78be06c733c007f1bf62251b3e 100644 (file)
@@ -1,9 +1,30 @@
 language: cpp
 language: cpp
+cache: ccache
+sudo: required
+dist: trusty
 before_install:
 before_install:
- - sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
- - sudo apt-get update -q
+ - sudo add-apt-repository 'deb http://archive.ubuntu.com/ubuntu/ wily main universe' -y
+ - sudo add-apt-repository 'deb http://archive.ubuntu.com/ubuntu/ xenial main' -y
+ - |
+   sudo sh -c '/bin/echo -e "Package: *\nPin: release n=wily\nPin-Priority: 1" > /etc/apt/preferences.d/wily'
+   sudo sh -c '/bin/echo -e "Package: *\nPin: release n=xenial\nPin-Priority: 1" > /etc/apt/preferences.d/xenial'
+ - sudo apt-get update -qq
 install:
 install:
+ - sudo apt-get -qq -y -t wily install gettext liblz4-dev python3-apt
+ - sudo apt-get -qq -y -t xenial install cmake ninja-build
  - sudo ./prepare-release travis-ci
  - sudo ./prepare-release travis-ci
- - export CC=gcc-5
- - export CXX=g++-5
-script: make -j1 && make test && test/integration/run-tests
+before_script:
+ - ( mkdir build && cd build && cmake -DCMAKE_BUILD_TYPE=Coverage -G Ninja .. )
+ - ninja -C build
+script:
+ - CTEST_OUTPUT_ON_FAILURE=1 ninja -C build test
+ - DESTDIR=$PWD/rootdir chronic ninja -C build install
+ - ./test/integration/run-tests -qq
+ - sudo adduser --force-badname --system --home /nonexistent --no-create-home --quiet _apt || true
+ - sudo chmod  go+x /home/travis
+ - sudo chmod -R go+rwX /home/travis/build
+ - sudo ./test/integration/run-tests -qq
+after_success:
+ - cd build
+ - gcov -r $(find -name '*.gcno')
+ - bash <(curl -s https://codecov.io/bash)