language: go sudo: false go: - master - 1.12.x - 1.11.x - 1.10.x - 1.9.x # go testing suite support, which we use, was introduced in go 1.7 # testing.TB, TB.Helper() was introduced in go 1.9 # Consequently, tests will only compile for go 1.9+ script: - go test -tags "alltests" -run Suite -coverprofile coverage.txt github.com/ugorji/go/codec - go test -tags "alltests safe" -run Suite -coverprofile coverage.safe.txt github.com/ugorji/go/codec - go test -tags "alltests codecgen" -run Suite -coverprofile coverage.codecgen.txt github.com/ugorji/go/codec # we use if block below, so that we still return with success even if skipped. # Previously, we used [[...]] && go test ..., which returned exit code 0 and broke the build. - | if [[ "${TRAVIS_GO_VERSION}" == "1.9.x" ]]; then GOARCH=386 go test -tags "alltests" -run Suite -coverprofile coverage.386.txt github.com/ugorji/go/codec fi - | if [[ "${TRAVIS_GO_VERSION}" == "1.10.x" ]]; then GOARCH=386 go test -tags "alltests safe" -run Suite -coverprofile coverage.386.safe.txt github.com/ugorji/go/codec fi - | if [[ "${TRAVIS_GO_VERSION}" == "1.11.x" ]]; then GOARCH=386 go test -tags "alltests codecgen" -run Suite -coverprofile coverage.386.codecgen.txt github.com/ugorji/go/codec fi - | if [[ "${TRAVIS_GO_VERSION}" == "1.12.x" ]]; then echo "XXXX RACE" && go test "-race" -tags "alltests" -run Suite -coverprofile coverage.race.txt github.com/ugorji/go/codec; fi after_success: - bash <(curl -s https://codecov.io/bash)