aboutsummaryrefslogtreecommitdiff
path: root/src/testing
diff options
context:
space:
mode:
Diffstat (limited to 'src/testing')
-rw-r--r--src/testing/benchmark.go8
-rw-r--r--src/testing/sub_test.go10
2 files changed, 13 insertions, 5 deletions
diff --git a/src/testing/benchmark.go b/src/testing/benchmark.go
index 8b7f5cebaf..be9e96d50c 100644
--- a/src/testing/benchmark.go
+++ b/src/testing/benchmark.go
@@ -73,11 +73,9 @@ type B struct {
// a call to StopTimer.
func (b *B) StartTimer() {
if !b.timerOn {
- if *benchmarkMemory || b.showAllocResult {
- runtime.ReadMemStats(&memStats)
- b.startAllocs = memStats.Mallocs
- b.startBytes = memStats.TotalAlloc
- }
+ runtime.ReadMemStats(&memStats)
+ b.startAllocs = memStats.Mallocs
+ b.startBytes = memStats.TotalAlloc
b.start = time.Now()
b.timerOn = true
}
diff --git a/src/testing/sub_test.go b/src/testing/sub_test.go
index af2d39c5be..acf5dea878 100644
--- a/src/testing/sub_test.go
+++ b/src/testing/sub_test.go
@@ -540,6 +540,16 @@ func TestBenchmarkStartsFrom1(t *T) {
})
}
+func TestBenchmarkReadMemStatsBeforeFirstRun(t *T) {
+ var first = true
+ Benchmark(func(b *B) {
+ if first && (b.startAllocs == 0 || b.startBytes == 0) {
+ panic(fmt.Sprintf("ReadMemStats not called before first run"))
+ }
+ first = false
+ })
+}
+
func TestParallelSub(t *T) {
c := make(chan int)
block := make(chan int)