1 # Test query for non-defaults in the env
2
3 # Go+BoringCrypto conflicts with GOFIPS140.
4 [GOEXPERIMENT:boringcrypto] skip
5
6 env GOROOT=./a
7 env GOTOOLCHAIN=local
8 env GOSUMDB=nodefault
9 env GOPROXY=nodefault
10 env GO111MODULE=auto
11 env CGO_CFLAGS=nodefault
12 env CGO_CPPFLAGS=nodefault
13 env GOFIPS140=latest
14 [cgo] env CGO_ENABLED=0
15
16 go env -changed
17 # linux output like GOTOOLCHAIN='local'
18 # windows output like GOTOOLCHAIN=local
19 stdout 'GOTOOLCHAIN=''?local''?'
20 stdout 'GOSUMDB=''?nodefault''?'
21 stdout 'GOPROXY=''?nodefault''?'
22 stdout 'GO111MODULE=''?auto''?'
23 stdout 'CGO_CFLAGS=''?nodefault''?'
24 stdout 'CGO_CPPFLAGS=''?nodefault''?'
25 stdout 'GOFIPS140=''?latest''?'
26 [cgo] stdout 'CGO_ENABLED=''?0''?'
27
28 go env -changed -json
29 stdout '"GOTOOLCHAIN": "local"'
30 stdout '"GOSUMDB": "nodefault"'
31 stdout '"GOPROXY": "nodefault"'
32 stdout '"GO111MODULE": "auto"'
33 stdout '"CGO_CFLAGS": "nodefault"'
34 stdout '"CGO_CPPFLAGS": "nodefault"'
35 stdout '"GOFIPS140": "latest"'
36 [cgo] stdout '"CGO_ENABLED": "0"'
37
38 [GOOS:windows] env GOOS=linux
39 [!GOOS:windows] env GOOS=windows
40 [GOARCH:amd64] env GOARCH=arm64
41 [!GOARCH:amd64] env GOARCH=amd64
42
43 go env -changed GOOS
44 [GOOS:windows] stdout 'set GOOS=linux'
45 [!GOOS:windows] stdout 'GOOS=''windows'''
46 go env -changed GOARCH
47 [GOARCH:amd64] stdout 'set GOARCH=arm64|GOARCH=''arm64'''
48 [!GOARCH:amd64] stdout 'set GOARCH=amd64|GOARCH=''amd64'''
49
50 go env -changed -json GOOS
51 [GOOS:windows] stdout '"GOOS": "linux"'
52 [!GOOS:windows] stdout '"GOOS": "windows"'
53 go env -changed -json GOARCH
54 [GOARCH:amd64] stdout '"GOARCH": "arm64"'
55 [!GOARCH:amd64] stdout '"GOARCH": "amd64"'
56
57 env GOARCH=amd64
58 env GOAMD64=v3
59 go env -changed
60 stdout 'GOAMD64=''?v3''?'
61
62 env GOPROXY=s
63 go env -changed GOPROXY
64 ! stdout 'GOPROXY'
65 env GOPROXY=s2
66 go env -changed GOPROXY
67 stdout 'GOPROXY=''?s2''?'
68
69 env GOROOT=./b
70 go env -changed
71 ! stdout 'GOTOOLCHAIN=''?local''?'
72
73 [GOOS:windows] env LocalAppData=C:\
74 [GOOS:windows] env GOCACHE=C:\go-build
75 [GOOS:windows] go env -changed
76 [GOOS:windows] ! stdout 'GOCACHE'
77
78 -- a/go.env --
79 GOPROXY=s
80 GOAMD64=v1
81 GOFIPS140=off
82
83 -- b/go.env --
84 GOTOOLCHAIN=local
85
View as plain text