OSDN Git Service

Merge pull request #41 from Bytom/dev
[bytom/vapor.git] / protocol / bc / entry_test.go
1 package bc
2
3 import (
4         "reflect"
5         "testing"
6 )
7
8 func BenchmarkEntryID(b *testing.B) {
9         m := NewMux([]*ValueSource{{Position: 1}}, &Program{Code: []byte{1}, VmVersion: 1})
10
11         entries := []Entry{
12                 NewIssuance(nil, &AssetAmount{}, 0),
13                 m,
14                 NewTxHeader(1, 1, nil, 0, nil, true),
15                 NewOutput(&ValueSource{}, &Program{Code: []byte{1}, VmVersion: 1}, 0),
16                 NewRetirement(&ValueSource{}, 1),
17                 NewSpend(&Hash{}, 0),
18         }
19
20         for _, e := range entries {
21                 name := reflect.TypeOf(e).Elem().Name()
22                 b.Run(name, func(b *testing.B) {
23                         for i := 0; i < b.N; i++ {
24                                 EntryID(e)
25                         }
26                 })
27         }
28 }