| #!/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 |