# Test that we can install tools required to contribute to the CUE
# project using the pre Go 1.16 install method (which should also
# work with Go 1.16)
#
# Keep this test in sync with all places that describe install
# instructions for contributing

[!long] skip 'Install tests use the network and take some time'

# For this test we want to use the real proxy
env GOPROXY=https://proxy.golang.org

# Sanity check pre install
! exists $WORK/gopath/bin/git-codereview

# Install
env GO111MODULE=on
go get golang.org/x/review/git-codereview
exec $WORK/gopath/bin/git-codereview help
stdout 'Git-codereview is a git helper'
