#!/bin/bash set -ex echo Testing num-bigint on rustc ${TRAVIS_RUST_VERSION} FEATURES="serde" if [[ "$TRAVIS_RUST_VERSION" =~ ^(nightly|beta|stable|1.31.0|1.26.0|1.22.0)$ ]]; then FEATURES="$FEATURES rand" fi if [[ "$TRAVIS_RUST_VERSION" =~ ^(nightly|beta|stable|1.31.0|1.26.0)$ ]]; then FEATURES="$FEATURES i128" fi if [[ "$TRAVIS_RUST_VERSION" =~ ^(nightly|beta|stable|1.31.0)$ ]]; then FEATURES="$FEATURES quickcheck quickcheck_macros" fi # num-bigint should build and test everywhere. cargo build --verbose cargo test --verbose # It should build with minimal features too. cargo build --no-default-features --features="std" cargo test --no-default-features --features="std" # Each isolated feature should also work everywhere. for feature in $FEATURES; do cargo build --verbose --no-default-features --features="std $feature" cargo test --verbose --no-default-features --features="std $feature" done # test all supported features together cargo build --features="std $FEATURES" cargo test --features="std $FEATURES" # make sure benchmarks can be built if [[ "$TRAVIS_RUST_VERSION" == "nightly" ]]; then cargo bench --all-features --no-run fi