#!/bin/bash if [ ! -f 'enumerator.cabal' ]; then echo -n "Can't find enumerator.cabal; please run this script as" echo -n " ./scripts/run-coverage from within the enumerator source" echo " directory" exit 1 fi . scripts/common.bash require_cabal_dev pushd tests $CABAL_DEV -s ../cabal-dev install --flags="coverage" || exit 1 popd rm -f enumerator_tests.tix cabal-dev/bin/enumerator_tests $@ EXCLUDES="\ --exclude=Main \ --exclude=EnumeratorTests.Binary \ --exclude=EnumeratorTests.Binary.Consume \ --exclude=EnumeratorTests.Binary.Drop \ --exclude=EnumeratorTests.Binary.Fold \ --exclude=EnumeratorTests.Binary.Handle \ --exclude=EnumeratorTests.Binary.Isolate \ --exclude=EnumeratorTests.Binary.Iterate \ --exclude=EnumeratorTests.Binary.Map \ --exclude=EnumeratorTests.Binary.Repeat \ --exclude=EnumeratorTests.Binary.Replicate \ --exclude=EnumeratorTests.Binary.Require \ --exclude=EnumeratorTests.Binary.Split \ --exclude=EnumeratorTests.Binary.Unfold \ --exclude=EnumeratorTests.Binary.Util \ --exclude=EnumeratorTests.Binary.Zip \ --exclude=EnumeratorTests.CatchError \ --exclude=EnumeratorTests.Compatibility \ --exclude=EnumeratorTests.Instances \ --exclude=EnumeratorTests.Join \ --exclude=EnumeratorTests.List \ --exclude=EnumeratorTests.List.Consume \ --exclude=EnumeratorTests.List.Drop \ --exclude=EnumeratorTests.List.Fold \ --exclude=EnumeratorTests.List.Isolate \ --exclude=EnumeratorTests.List.Iterate \ --exclude=EnumeratorTests.List.Map \ --exclude=EnumeratorTests.List.Repeat \ --exclude=EnumeratorTests.List.Replicate \ --exclude=EnumeratorTests.List.Require \ --exclude=EnumeratorTests.List.Split \ --exclude=EnumeratorTests.List.Unfold \ --exclude=EnumeratorTests.List.Unique \ --exclude=EnumeratorTests.List.Util \ --exclude=EnumeratorTests.List.Zip \ --exclude=EnumeratorTests.Misc \ --exclude=EnumeratorTests.Sequence \ --exclude=EnumeratorTests.Stream \ --exclude=EnumeratorTests.Text \ --exclude=EnumeratorTests.Text.Codecs \ --exclude=EnumeratorTests.Text.Consume \ --exclude=EnumeratorTests.Text.Drop \ --exclude=EnumeratorTests.Text.Fold \ --exclude=EnumeratorTests.Text.Handle \ --exclude=EnumeratorTests.Text.Isolate \ --exclude=EnumeratorTests.Text.Iterate \ --exclude=EnumeratorTests.Text.Map \ --exclude=EnumeratorTests.Text.Repeat \ --exclude=EnumeratorTests.Text.Replicate \ --exclude=EnumeratorTests.Text.Require \ --exclude=EnumeratorTests.Text.Split \ --exclude=EnumeratorTests.Text.Unfold \ --exclude=EnumeratorTests.Text.Util \ --exclude=EnumeratorTests.Text.Zip \ --exclude=EnumeratorTests.Trans \ --exclude=EnumeratorTests.Util" hpc markup --srcdir=src/ --srcdir=tests/ enumerator_tests.tix --destdir=hpc-markup $EXCLUDES > /dev/null hpc report --srcdir=src/ --srcdir=tests/ enumerator_tests.tix $EXCLUDES