From 483ff3543746ca3dc97eac8f506564f4e617a8f2 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Thu, 1 Oct 2020 14:31:19 +0200 Subject: prog: reduce size of tests in race mode More race timeouts on CI. Exclude more tests. This reduces prog test time fron 81 to 15 sec with GOMAXPROCS=1. --- prog/export_test.go | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'prog/export_test.go') diff --git a/prog/export_test.go b/prog/export_test.go index 8e31a036b..a007ed3ce 100644 --- a/prog/export_test.go +++ b/prog/export_test.go @@ -57,6 +57,7 @@ func testEachTarget(t *testing.T, fn func(t *testing.T, target *Target)) { for _, target := range AllTargets() { target := target t.Run(fmt.Sprintf("%v/%v", target.OS, target.Arch), func(t *testing.T) { + skipTargetRace(t, target) t.Parallel() fn(t, target) }) @@ -76,12 +77,22 @@ func testEachTargetRandom(t *testing.T, fn func(t *testing.T, target *Target, rs target := target rs := rand.NewSource(rs0.Int63()) t.Run(fmt.Sprintf("%v/%v", target.OS, target.Arch), func(t *testing.T) { + skipTargetRace(t, target) t.Parallel() fn(t, target, rs, iters) }) } } +func skipTargetRace(t *testing.T, target *Target) { + // Race execution is slow and we are getting timeouts on CI. + // For tests that run for all targets, leave only 2 targets, + // this should be enough to detect some races. + if raceEnabled && (target.OS != "test" || target.Arch != "64" && target.Arch != "32") { + t.Skip("skipping all but test/64 targets in race mode") + } +} + func initBench(b *testing.B) (*Target, func()) { olddebug := debug debug = false -- cgit mrf-deployment