cmd/go/testdata/script: fix TestScript/env_gocacheprog on Windows

The backslashes on the windows paths will be escaped, so when checking
for them in the regular expression we'd have to have quadruple
backslashes '\\\\'. Since it's difficult to escape $GOCACHEPROG properly
for both json and regexp, just check for a string that ends in
cacheprog$GOEXE. We already check that the proper value is reported in
go env and go env -changed, and the json test case is mostly useful to
verify that GOCACHEPROG shows up in the json output.

For #71059

Change-Id: I52d49de61f2309a139f84c4d232b4cd94546ec8c
Cq-Include-Trybots: luci.golang.try:gotip-windows-amd64-longtest,gotip-linux-amd64-longtest
Reviewed-on: https://go-review.googlesource.com/c/go/+/641375
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Sam Thanawalla <samthanawalla@google.com>
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
This commit is contained in:
Michael Matloob 2025-01-08 11:19:05 -05:00
parent f025d19e7b
commit 9a44df6675

View file

@ -24,7 +24,7 @@ go env -changed
stdout 'GOCACHEPROG=''?'$GOCACHEPROG'''?' stdout 'GOCACHEPROG=''?'$GOCACHEPROG'''?'
go env -changed -json go env -changed -json
stdout '"GOCACHEPROG": "'$GOCACHEPROG'"' stdout '"GOCACHEPROG": ".*cacheprog'$GOEXE'"'
-- cacheprog.go -- -- cacheprog.go --
// This is a minimal GOCACHEPROG program that can't actually do anything but exit. // This is a minimal GOCACHEPROG program that can't actually do anything but exit.