blob: e4c52a432106b31976746038be9f7ddeb837f697 [file] [log] [blame]
#!/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