diff options
author | Nadrieril | 2019-03-19 00:04:39 +0100 |
---|---|---|
committer | Nadrieril | 2019-03-19 00:04:39 +0100 |
commit | ad3bc07cc46af26c13823faf536495ff423d7bc9 (patch) | |
tree | 68c1cd51844a82f92dcc3ea3fd3d18f8a9f4622e | |
parent | 5f0331e9a339768dfa40018d1f82c4815dbd11af (diff) |
Add travis integration
-rw-r--r-- | .travis.yml | 28 | ||||
-rw-r--r-- | dhall/Cargo.toml | 3 | ||||
-rw-r--r-- | dhall/tests/common/mod.rs | 26 |
3 files changed, 46 insertions, 11 deletions
diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..6106df1 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,28 @@ +language: rust +sudo: required +dist: trusty +addons: + apt: + packages: + - libssl-dev +cache: cargo +rust: + - nightly + +before_cache: | + # RUSTFLAGS="--cfg procmacro2_semver_exempt" cargo install cargo-tarpaulin -f + +install: +- cargo build --release --all --all-features + +script: +- cargo test --release --all --all-features + +after_success: | + # Uncomment the following line for coveralls.io + # cargo tarpaulin --ciserver travis-ci --coveralls $TRAVIS_JOB_ID + + # Uncomment the following two lines create and upload a report for codecov.io + # cargo tarpaulin --out Xml + # bash <(curl -s https://codecov.io/bash) + diff --git a/dhall/Cargo.toml b/dhall/Cargo.toml index fd462b1..3c3e375 100644 --- a/dhall/Cargo.toml +++ b/dhall/Cargo.toml @@ -7,6 +7,9 @@ edition = "2018" [lib] doctest = false +[features] +nothreads = [] # disable threads for tarpaulin + [dependencies] bytecount = "0.5.1" itertools = "0.8.0" diff --git a/dhall/tests/common/mod.rs b/dhall/tests/common/mod.rs index 0589a4a..d18b4bf 100644 --- a/dhall/tests/common/mod.rs +++ b/dhall/tests/common/mod.rs @@ -24,18 +24,22 @@ macro_rules! make_spec_test { #[allow(non_snake_case)] fn $name() { use crate::common::*; - use std::thread; - // The parser stack overflows even on small files - // when compiled without optimizations - thread::Builder::new() - .stack_size(4 * 1024 * 1024) - .spawn(move || { - run_test($path, Feature::$type); - }) - .unwrap() - .join() - .unwrap(); + if cfg!(feature="nothreads") { + run_test($path, Feature::$type); + } else { + use std::thread; + // The parser stack overflows even on small files + // when compiled without optimizations + thread::Builder::new() + .stack_size(4 * 1024 * 1024) + .spawn(move || { + run_test($path, Feature::$type); + }) + .unwrap() + .join() + .unwrap(); + } } }; } |