#!/bin/sh

set -e

if which goctest >/dev/null; then
    goctest="goctest"
else
    goctest="go test"
fi

echo Checking formatting
fmt=$(gofmt -l .)

if [ -n "$fmt" ]; then
    echo "Formatting wrong in following files"
    echo $fmt
    exit 1
fi

echo Installing godeps
go get launchpad.net/godeps
export PATH=$PATH:$GOPATH/bin

echo Install golint
go get github.com/golang/lint/golint
export PATH=$PATH:$GOPATH/bin

echo Obtaining dependencies
godeps -u dependencies.tsv



echo Building
go build -v launchpad.net/goget-ubuntu-touch/...


# tests
echo Running tests from $(pwd)
$goctest -v -cover ./...


# go vet
echo Running vet
go vet ./...

# golint
# TODO enable!
#echo Running lint
#lint=$(golint ./...)
#if [ -n "$lint" ]; then
#    echo "Lint complains:"
#    echo $lint
#    exit 1
#fi

echo "All good, what could possibly go wrong"
