#!/bin/bash set -e DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" channel() { if [ -n "${TRAVIS}" ]; then if [ "${TRAVIS_RUST_VERSION}" = "${CHANNEL}" ]; then pwd (set -x; cargo "$@") fi elif [ -n "${APPVEYOR}" ]; then if [ "${APPVEYOR_RUST_CHANNEL}" = "${CHANNEL}" ]; then pwd (set -x; cargo "$@") fi else pwd (set -x; cargo "+${CHANNEL}" "$@") fi } if [ -n "${CLIPPY}" ]; then # cached installation will not work on a later nightly if [ -n "${TRAVIS}" ] && ! cargo install clippy --debug --force; then echo "COULD NOT COMPILE CLIPPY, IGNORING CLIPPY TESTS" exit fi cargo clippy -- -Dclippy else CHANNEL=nightly channel clean channel build (cd "$DIR/tests/deps" && channel build) channel test channel test --features preserve_order channel test --features arbitrary_precision for CHANNEL in stable 1.15.0 beta; do channel clean channel build channel build --features preserve_order channel build --features arbitrary_precision done fi