From 9b7a8aaaf3adbc330ef724fb581b3bfa72ab2a49 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Sun, 8 Jul 2018 16:42:33 -0700 Subject: [PATCH] runtime: only run TestMemStats sanity tests once Fixes #22696 Change-Id: Ibe4628f71d64a2b36b655ea69710a925924b12a3 Reviewed-on: https://go-review.googlesource.com/122586 Run-TryBot: Ian Lance Taylor TryBot-Result: Gobot Gobot Reviewed-by: Brad Fitzpatrick Reviewed-by: Austin Clements --- src/runtime/malloc_test.go | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/runtime/malloc_test.go b/src/runtime/malloc_test.go index 0bce059f7f7..e6afc25ea9b 100644 --- a/src/runtime/malloc_test.go +++ b/src/runtime/malloc_test.go @@ -19,7 +19,11 @@ import ( "unsafe" ) +var testMemStatsCount int + func TestMemStats(t *testing.T) { + testMemStatsCount++ + // Make sure there's at least one forced GC. GC() @@ -35,6 +39,13 @@ func TestMemStats(t *testing.T) { } le := func(thresh float64) func(interface{}) error { return func(x interface{}) error { + // These sanity tests aren't necessarily valid + // with high -test.count values, so only run + // them once. + if testMemStatsCount > 1 { + return nil + } + if reflect.ValueOf(x).Convert(reflect.TypeOf(thresh)).Float() < thresh { return nil }