GoPLS Viewer

Home|gopls/cmd/benchcmp/benchcmp_test.go
1// Copyright 2014 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5package main
6
7import (
8    "reflect"
9    "testing"
10
11    "golang.org/x/tools/benchmark/parse"
12)
13
14func TestSelectBest(t *testing.T) {
15    have := parse.Set{
16        "Benchmark1": []*parse.Benchmark{
17            {
18                Name"Benchmark1",
19                N:    10NsPerOp100Measuredparse.NsPerOp,
20                Ord0,
21            },
22            {
23                Name"Benchmark1",
24                N:    10NsPerOp50Measuredparse.NsPerOp,
25                Ord3,
26            },
27        },
28        "Benchmark2": []*parse.Benchmark{
29            {
30                Name"Benchmark2",
31                N:    10NsPerOp60Measuredparse.NsPerOp,
32                Ord1,
33            },
34            {
35                Name"Benchmark2",
36                N:    10NsPerOp500Measuredparse.NsPerOp,
37                Ord2,
38            },
39        },
40    }
41
42    want := parse.Set{
43        "Benchmark1": []*parse.Benchmark{
44            {
45                Name"Benchmark1",
46                N:    10NsPerOp50Measuredparse.NsPerOp,
47                Ord0,
48            },
49        },
50        "Benchmark2": []*parse.Benchmark{
51            {
52                Name"Benchmark2",
53                N:    10NsPerOp60Measuredparse.NsPerOp,
54                Ord1,
55            },
56        },
57    }
58
59    selectBest(have)
60    if !reflect.DeepEqual(wanthave) {
61        t.Errorf("filtered bench set incorrectly, want %v have %v"wanthave)
62    }
63}
64
65func TestFormatNs(t *testing.T) {
66    tests := []struct {
67        input    float64
68        expected string
69    }{
70        {input0expected"0.00"},
71        {input0.2expected"0.20"},
72        {input2expected"2.00"},
73        {input2.2expected"2.20"},
74        {input4expected"4.00"},
75        {input16expected"16.0"},
76        {input16.08expected"16.1"},
77        {input128expected"128"},
78        {input256.2expected"256"},
79    }
80
81    for _tt := range tests {
82        actual := formatNs(tt.input)
83        if actual != tt.expected {
84            t.Fatalf("%f. got %q, want %q"tt.inputactualtt.expected)
85        }
86    }
87}
88
MembersX
TestSelectBest
TestSelectBest.want
TestFormatNs
TestFormatNs.t
reflect
testing
TestFormatNs.tests
TestFormatNs.RangeStmt_1629.tt
TestFormatNs.RangeStmt_1629.BlockStmt.actual
TestSelectBest.t
TestSelectBest.have
Members
X