blob: b1d4c39c16f0505c6b3e29d4236eb301bbe90e49 [file] [log] [blame]
# Test that -benchtime 1x only runs a total of 1 loop iteration.
# See golang.org/issue/32051.
go test -run ^$ -bench . -benchtime 1x
-- go.mod --
module bench
go 1.16
-- x_test.go --
package bench
import (
"fmt"
"os"
"testing"
)
var called = false
func TestMain(m *testing.M) {
m.Run()
if !called {
fmt.Println("benchmark never called")
os.Exit(1)
}
}
func Benchmark(b *testing.B) {
if b.N > 1 {
b.Fatalf("called with b.N=%d; want b.N=1 only", b.N)
}
if called {
b.Fatal("called twice")
}
called = true
}