github.com/hhjpin/gse@v0.0.0-20191208043325-604159fece91/gse_bm_test.go (about)

     1  package gse
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/vcaesar/tt"
     7  )
     8  
     9  var text = "纽约时代广场, 纽约帝国大厦, 旧金山湾金门大桥"
    10  
    11  func init() {
    12  	prodSeg.LoadDict()
    13  }
    14  
    15  func BenchmarkCut(t *testing.B) {
    16  	fn := func() {
    17  		prodSeg.Cut(text)
    18  	}
    19  
    20  	tt.BM(t, fn)
    21  }
    22  
    23  func BenchmarkCutHMM(t *testing.B) {
    24  	fn := func() {
    25  		prodSeg.Cut(text, true)
    26  	}
    27  
    28  	tt.BM(t, fn)
    29  }
    30  
    31  func BenchmarkCutAll(t *testing.B) {
    32  	fn := func() {
    33  		prodSeg.CutAll(text)
    34  	}
    35  
    36  	tt.BM(t, fn)
    37  }
    38  
    39  func BenchmarkCutSearch(t *testing.B) {
    40  	fn := func() {
    41  		prodSeg.CutSearch(text)
    42  	}
    43  
    44  	tt.BM(t, fn)
    45  }
    46  
    47  func BenchmarkCutSearchHMM(t *testing.B) {
    48  	fn := func() {
    49  		prodSeg.CutSearch(text, true)
    50  	}
    51  
    52  	tt.BM(t, fn)
    53  }
    54  
    55  func BenchmarkSlice(b *testing.B) {
    56  	fn := func() {
    57  		prodSeg.Slice([]byte(text))
    58  	}
    59  
    60  	tt.BM(b, fn)
    61  }
    62  
    63  func BenchmarkString(b *testing.B) {
    64  	fn := func() {
    65  		prodSeg.String([]byte(text))
    66  	}
    67  
    68  	tt.BM(b, fn)
    69  }