mirror of
https://github.com/golang/go.git
synced 2025-05-30 19:52:53 +00:00
runtime: shorten tests in all.bash
This cuts 23 seconds from all.bash on my MacBook Pro. Change-Id: Ibc4d7c01660b9e9ebd088dd55ba993f0d7ec6aa3 Reviewed-on: https://go-review.googlesource.com/73991 Reviewed-by: Ian Lance Taylor <iant@golang.org>
This commit is contained in:
parent
6c8418f560
commit
94471f6324
4
src/cmd/dist/test.go
vendored
4
src/cmd/dist/test.go
vendored
@ -402,9 +402,9 @@ func (t *tester) registerTests() {
|
|||||||
testName := "runtime:cpu124"
|
testName := "runtime:cpu124"
|
||||||
t.tests = append(t.tests, distTest{
|
t.tests = append(t.tests, distTest{
|
||||||
name: testName,
|
name: testName,
|
||||||
heading: "GOMAXPROCS=2 runtime -cpu=1,2,4",
|
heading: "GOMAXPROCS=2 runtime -cpu=1,2,4 -quick",
|
||||||
fn: func(dt *distTest) error {
|
fn: func(dt *distTest) error {
|
||||||
cmd := t.addCmd(dt, "src", "go", "test", "-short", t.timeout(300), t.tags(), "runtime", "-cpu=1,2,4")
|
cmd := t.addCmd(dt, "src", "go", "test", "-short", t.timeout(300), t.tags(), "runtime", "-cpu=1,2,4", "-quick")
|
||||||
// We set GOMAXPROCS=2 in addition to -cpu=1,2,4 in order to test runtime bootstrap code,
|
// We set GOMAXPROCS=2 in addition to -cpu=1,2,4 in order to test runtime bootstrap code,
|
||||||
// creation of first goroutines and first garbage collections in the parallel setting.
|
// creation of first goroutines and first garbage collections in the parallel setting.
|
||||||
cmd.Env = append(os.Environ(), "GOMAXPROCS=2")
|
cmd.Env = append(os.Environ(), "GOMAXPROCS=2")
|
||||||
|
@ -44,6 +44,10 @@ type buildexe struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func runTestProg(t *testing.T, binary, name string, env ...string) string {
|
func runTestProg(t *testing.T, binary, name string, env ...string) string {
|
||||||
|
if *flagQuick {
|
||||||
|
t.Skip("-quick")
|
||||||
|
}
|
||||||
|
|
||||||
testenv.MustHaveGoBuild(t)
|
testenv.MustHaveGoBuild(t)
|
||||||
|
|
||||||
exe, err := buildTestProg(t, binary)
|
exe, err := buildTestProg(t, binary)
|
||||||
@ -53,6 +57,9 @@ func runTestProg(t *testing.T, binary, name string, env ...string) string {
|
|||||||
|
|
||||||
cmd := testenv.CleanCmdEnv(exec.Command(exe, name))
|
cmd := testenv.CleanCmdEnv(exec.Command(exe, name))
|
||||||
cmd.Env = append(cmd.Env, env...)
|
cmd.Env = append(cmd.Env, env...)
|
||||||
|
if testing.Short() {
|
||||||
|
cmd.Env = append(cmd.Env, "RUNTIME_TEST_SHORT=1")
|
||||||
|
}
|
||||||
var b bytes.Buffer
|
var b bytes.Buffer
|
||||||
cmd.Stdout = &b
|
cmd.Stdout = &b
|
||||||
cmd.Stderr = &b
|
cmd.Stderr = &b
|
||||||
@ -93,6 +100,10 @@ func runTestProg(t *testing.T, binary, name string, env ...string) string {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func buildTestProg(t *testing.T, binary string, flags ...string) (string, error) {
|
func buildTestProg(t *testing.T, binary string, flags ...string) (string, error) {
|
||||||
|
if *flagQuick {
|
||||||
|
t.Skip("-quick")
|
||||||
|
}
|
||||||
|
|
||||||
checkStaleRuntime(t)
|
checkStaleRuntime(t)
|
||||||
|
|
||||||
testprog.Lock()
|
testprog.Lock()
|
||||||
|
@ -244,7 +244,7 @@ func testConcurrentReadsAfterGrowth(t *testing.T, useReflect bool) {
|
|||||||
numGrowStep := 250
|
numGrowStep := 250
|
||||||
numReader := 16
|
numReader := 16
|
||||||
if testing.Short() {
|
if testing.Short() {
|
||||||
numLoop, numGrowStep = 2, 500
|
numLoop, numGrowStep = 2, 100
|
||||||
}
|
}
|
||||||
for i := 0; i < numLoop; i++ {
|
for i := 0; i < numLoop; i++ {
|
||||||
m := make(map[int]int, 0)
|
m := make(map[int]int, 0)
|
||||||
|
@ -9,6 +9,7 @@ import (
|
|||||||
"encoding/binary"
|
"encoding/binary"
|
||||||
"fmt"
|
"fmt"
|
||||||
"internal/race"
|
"internal/race"
|
||||||
|
"internal/testenv"
|
||||||
. "runtime"
|
. "runtime"
|
||||||
"testing"
|
"testing"
|
||||||
)
|
)
|
||||||
@ -88,6 +89,10 @@ func TestMemmoveAlias(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestMemmoveLarge0x180000(t *testing.T) {
|
func TestMemmoveLarge0x180000(t *testing.T) {
|
||||||
|
if testing.Short() && testenv.Builder() == "" {
|
||||||
|
t.Skip("-short")
|
||||||
|
}
|
||||||
|
|
||||||
t.Parallel()
|
t.Parallel()
|
||||||
if race.Enabled {
|
if race.Enabled {
|
||||||
t.Skip("skipping large memmove test under race detector")
|
t.Skip("skipping large memmove test under race detector")
|
||||||
@ -96,6 +101,10 @@ func TestMemmoveLarge0x180000(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestMemmoveOverlapLarge0x120000(t *testing.T) {
|
func TestMemmoveOverlapLarge0x120000(t *testing.T) {
|
||||||
|
if testing.Short() && testenv.Builder() == "" {
|
||||||
|
t.Skip("-short")
|
||||||
|
}
|
||||||
|
|
||||||
t.Parallel()
|
t.Parallel()
|
||||||
if race.Enabled {
|
if race.Enabled {
|
||||||
t.Skip("skipping large memmove test under race detector")
|
t.Skip("skipping large memmove test under race detector")
|
||||||
|
@ -243,6 +243,10 @@ var (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func TestDeferKeepAlive(t *testing.T) {
|
func TestDeferKeepAlive(t *testing.T) {
|
||||||
|
if *flagQuick {
|
||||||
|
t.Skip("-quick")
|
||||||
|
}
|
||||||
|
|
||||||
// See issue 21402.
|
// See issue 21402.
|
||||||
t.Parallel()
|
t.Parallel()
|
||||||
type T *int // needs to be a pointer base type to avoid tinyalloc and its never-finalized behavior.
|
type T *int // needs to be a pointer base type to avoid tinyalloc and its never-finalized behavior.
|
||||||
|
@ -5,6 +5,7 @@
|
|||||||
package runtime_test
|
package runtime_test
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"flag"
|
||||||
"io"
|
"io"
|
||||||
. "runtime"
|
. "runtime"
|
||||||
"runtime/debug"
|
"runtime/debug"
|
||||||
@ -13,6 +14,8 @@ import (
|
|||||||
"unsafe"
|
"unsafe"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
var flagQuick = flag.Bool("quick", false, "skip slow tests, for second run in all.bash")
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
// We're testing the runtime, so make tracebacks show things
|
// We're testing the runtime, so make tracebacks show things
|
||||||
// in the runtime. This only raises the level, so it won't
|
// in the runtime. This only raises the level, so it won't
|
||||||
|
6
src/runtime/testdata/testprogcgo/callback.go
vendored
6
src/runtime/testdata/testprogcgo/callback.go
vendored
@ -29,6 +29,7 @@ import "C"
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"os"
|
||||||
"runtime"
|
"runtime"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -63,7 +64,10 @@ func grow1(x, sum *int) int {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func CgoCallbackGC() {
|
func CgoCallbackGC() {
|
||||||
const P = 100
|
P := 100
|
||||||
|
if os.Getenv("RUNTIME_TESTING_SHORT") != "" {
|
||||||
|
P = 10
|
||||||
|
}
|
||||||
done := make(chan bool)
|
done := make(chan bool)
|
||||||
// allocate a bunch of stack frames and spray them with pointers
|
// allocate a bunch of stack frames and spray them with pointers
|
||||||
for i := 0; i < P; i++ {
|
for i := 0; i < P; i++ {
|
||||||
|
6
src/runtime/testdata/testprogcgo/cgo.go
vendored
6
src/runtime/testdata/testprogcgo/cgo.go
vendored
@ -52,7 +52,11 @@ func CgoSignalDeadlock() {
|
|||||||
time.Sleep(time.Millisecond)
|
time.Sleep(time.Millisecond)
|
||||||
start := time.Now()
|
start := time.Now()
|
||||||
var times []time.Duration
|
var times []time.Duration
|
||||||
for i := 0; i < 64; i++ {
|
n := 64
|
||||||
|
if os.Getenv("RUNTIME_TEST_SHORT") != "" {
|
||||||
|
n = 16
|
||||||
|
}
|
||||||
|
for i := 0; i < n; i++ {
|
||||||
go func() {
|
go func() {
|
||||||
runtime.LockOSThread()
|
runtime.LockOSThread()
|
||||||
select {}
|
select {}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user