github.com/graybobo/golang.org-package-offline-cache@v0.0.0-20200626051047-6608995c132f/x/tools/cmd/benchcmp/benchcmp_test.go (about)

     1  package main
     2  
     3  import (
     4  	"reflect"
     5  	"testing"
     6  
     7  	"golang.org/x/tools/benchmark/parse"
     8  )
     9  
    10  func TestSelectBest(t *testing.T) {
    11  	have := parse.Set{
    12  		"Benchmark1": []*parse.Benchmark{
    13  			{
    14  				Name: "Benchmark1",
    15  				N:    10, NsPerOp: 100, Measured: parse.NsPerOp,
    16  				Ord: 0,
    17  			},
    18  			{
    19  				Name: "Benchmark1",
    20  				N:    10, NsPerOp: 50, Measured: parse.NsPerOp,
    21  				Ord: 3,
    22  			},
    23  		},
    24  		"Benchmark2": []*parse.Benchmark{
    25  			{
    26  				Name: "Benchmark2",
    27  				N:    10, NsPerOp: 60, Measured: parse.NsPerOp,
    28  				Ord: 1,
    29  			},
    30  			{
    31  				Name: "Benchmark2",
    32  				N:    10, NsPerOp: 500, Measured: parse.NsPerOp,
    33  				Ord: 2,
    34  			},
    35  		},
    36  	}
    37  
    38  	want := parse.Set{
    39  		"Benchmark1": []*parse.Benchmark{
    40  			{
    41  				Name: "Benchmark1",
    42  				N:    10, NsPerOp: 50, Measured: parse.NsPerOp,
    43  				Ord: 0,
    44  			},
    45  		},
    46  		"Benchmark2": []*parse.Benchmark{
    47  			{
    48  				Name: "Benchmark2",
    49  				N:    10, NsPerOp: 60, Measured: parse.NsPerOp,
    50  				Ord: 1,
    51  			},
    52  		},
    53  	}
    54  
    55  	selectBest(have)
    56  	if !reflect.DeepEqual(want, have) {
    57  		t.Errorf("filtered bench set incorrectly, want %v have %v", want, have)
    58  	}
    59  }