]> Cypherpunks.ru repositories - gostls13.git/blob - src/run.bat
run.bat: make windows runtime test timeout same as other os
[gostls13.git] / src / run.bat
1 :: Copyright 2012 The Go Authors. All rights reserved.
2 :: Use of this source code is governed by a BSD-style
3 :: license that can be found in the LICENSE file.
4 @echo off
5
6 :: Keep environment variables within this script
7 :: unless invoked with --no-local.
8 if x%1==x--no-local goto nolocal
9 if x%2==x--no-local goto nolocal
10 setlocal
11 :nolocal
12
13 set GOBUILDFAIL=0
14
15 :: we disallow local import for non-local packages, if %GOROOT% happens
16 :: to be under %GOPATH%, then some tests below will fail
17 set GOPATH=
18
19 rem TODO avoid rebuild if possible
20
21 if x%1==x--no-rebuild goto norebuild
22 echo # Building packages and commands.
23 go install -a -v std
24 if errorlevel 1 goto fail
25 echo.
26 :norebuild
27
28 :: we must unset GOROOT_FINAL before tests, because runtime/debug requires
29 :: correct access to source code, so if we have GOROOT_FINAL in effect,
30 :: at least runtime/debug test will fail.
31 set GOROOT_FINAL=
32
33 :: get CGO_ENABLED
34 go env > env.bat
35 if errorlevel 1 goto fail
36 call env.bat
37 del env.bat
38 echo.
39
40 echo # Testing packages.
41 go test std -short -timeout=120s
42 if errorlevel 1 goto fail
43 echo.
44
45 echo # runtime -cpu=1,2,4
46 go test runtime -short -timeout=240s -cpu=1,2,4
47 if errorlevel 1 goto fail
48 echo.
49
50 echo # sync -cpu=10
51 go test sync -short -timeout=120s -cpu=10
52 if errorlevel 1 goto fail
53 echo.
54
55 if not "%GOHOSTOS%-%GOOS%-%GOARCH%-%CGO_ENABLED%" == "windows-windows-amd64-1" goto norace
56 echo # Testing race detector.
57 go test -race -i flag
58 if errorlevel 1 goto fail
59 go test -race -short flag
60 if errorlevel 1 goto fail
61 echo.
62 :norace
63
64 echo # ..\misc\dashboard\builder ..\misc\goplay
65 go build ..\misc\dashboard\builder ..\misc\goplay
66 if errorlevel 1 goto fail
67 echo.
68
69 echo # ..\test\bench\go1
70 go test ..\test\bench\go1
71 if errorlevel 1 goto fail
72 echo.
73
74 :: cgo tests
75 if x%CGO_ENABLED% == x0 goto nocgo
76 echo # ..\misc\cgo\life
77 go run "%GOROOT%\test\run.go" - ..\misc\cgo\life
78 if errorlevel 1 goto fail
79 echo.
80
81 echo # ..\misc\cgo\stdio
82 go run "%GOROOT%\test\run.go" - ..\misc\cgo\stdio
83 if errorlevel 1 goto fail
84 echo.
85
86 echo # ..\misc\cgo\test
87 go test ..\misc\cgo\test
88 if errorlevel 1 goto fail
89 echo.
90 :nocgo
91
92 echo # ..\doc\progs
93 go run "%GOROOT%\test\run.go" - ..\doc\progs
94 if errorlevel 1 goto fail
95 echo.
96
97 :: TODO: The other tests in run.bash.
98
99
100 set OLDGOMAXPROCS=%GOMAXPROCS%
101
102 echo # ..\test
103 cd ..\test
104 set FAIL=0
105 set GOMAXPROCS=
106 go run run.go
107 if errorlevel 1 set FAIL=1
108 cd ..\src
109 echo.
110 if %FAIL%==1 goto fail
111
112 set GOMAXPROCS=%OLDGOMAXPROCS%
113 set OLDGOMAXPROCS=
114
115 echo # Checking API compatibility.
116 go tool api -c ..\api\go1.txt -next ..\api\next.txt -except ..\api\except.txt
117 if errorlevel 1 goto fail
118 echo.
119
120 echo ALL TESTS PASSED
121 goto end
122
123 :fail
124 set GOBUILDFAIL=1
125
126 :end