#!/bin/bash

set -e

# cd to the directory containing this crate's Cargo.toml so that we don't need
# to pass --manifest-path to every `cargo` command.
cd "$(dirname "$0")"

# This is a convenience script for running a broad swath of the syntax tests.
echo "===== DEFAULT FEATURES ==="
cargo test

features=(
    std
    unicode
    unicode-age
    unicode-bool
    unicode-case
    unicode-gencat
    unicode-perl
    unicode-script
    unicode-segment
)
for f in "${features[@]}"; do
    echo "=== FEATURE: $f ==="
    # We only run library tests because I couldn't figure out how to easily
    # make doc tests run in 'no_std' mode. In particular, without the Error
    # trait, using '?' in doc tests seems tricky.
    cargo test --no-default-features --lib --features "$f"
done
