Commit b379b32f authored by Brad Fitzpatrick's avatar Brad Fitzpatrick

cmd/api: add a benchmark over the standard library

R=golang-dev, gri
CC=golang-dev
https://golang.org/cl/12603045
parent 36703370
......@@ -10,8 +10,10 @@ import (
"bytes"
"flag"
"fmt"
"go/build"
"io/ioutil"
"os"
"os/exec"
"path/filepath"
"sort"
"strings"
......@@ -139,3 +141,28 @@ func TestCompareAPI(t *testing.T) {
}
}
}
func BenchmarkAll(b *testing.B) {
stds, err := exec.Command("go", "list", "std").Output()
if err != nil {
b.Fatal(err)
}
b.ResetTimer()
pkgNames := strings.Fields(string(stds))
for _, c := range contexts {
c.Compiler = build.Default.Compiler
}
for i := 0; i < b.N; i++ {
for _, context := range contexts {
w := NewWalker(context, filepath.Join(build.Default.GOROOT, "src/pkg"))
for _, name := range pkgNames {
if name != "unsafe" && !strings.HasPrefix(name, "cmd/") {
w.export(w.Import(name))
}
}
w.Features()
}
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment