#!/bin/bash # fail out of the script if anything here fails set -e # set the path to the present working directory export GOPATH=`pwd` # Vendorize the BurntSushi test suite # NOTE: this gets a specific release to avoid versioning issues if [ ! -d 'src/github.com/BurntSushi/toml-test' ]; then mkdir -p src/github.com/BurntSushi git clone https://github.com/BurntSushi/toml-test.git src/github.com/BurntSushi/toml-test fi pushd src/github.com/BurntSushi/toml-test git reset --hard '0.2.0' # use the released version, NOT tip popd go build -o toml-test github.com/BurntSushi/toml-test # vendorize the current lib for testing # NOTE: this basically mocks an install without having to go back out to github for code mkdir -p src/github.com/pelletier/go-toml/cmd cp *.go *.toml src/github.com/pelletier/go-toml cp cmd/*.go src/github.com/pelletier/go-toml/cmd go build -o test_program_bin src/github.com/pelletier/go-toml/cmd/test_program.go # Run basic unit tests and then the BurntSushi test suite go test -v github.com/pelletier/go-toml ./toml-test ./test_program_bin | tee test_out