1
0
Fork 0
forked from mirrors/tar-split

tar/storage: Benchmark for bufferFileGetPutter.Put

Signed-off-by: Alexander Morozov <lk4d4@docker.com>
This commit is contained in:
Alexander Morozov 2015-08-13 11:42:14 -07:00
parent 505d53c95c
commit ea73dc6f6f

View file

@ -2,7 +2,9 @@ package storage
import (
"bytes"
"fmt"
"io/ioutil"
"strings"
"testing"
)
@ -39,6 +41,7 @@ func TestGetter(t *testing.T) {
}
}
}
func TestPutter(t *testing.T) {
fp := NewDiscardFilePutter()
// map[filename]map[body]crc64sum
@ -60,3 +63,22 @@ func TestPutter(t *testing.T) {
}
}
}
func BenchmarkPutter(b *testing.B) {
files := []string{
strings.Repeat("foo", 1000),
strings.Repeat("bar", 1000),
strings.Repeat("baz", 1000),
strings.Repeat("fooz", 1000),
strings.Repeat("vbatts", 1000),
strings.Repeat("systemd", 1000),
}
for i := 0; i < b.N; i++ {
fgp := NewBufferFileGetPutter()
for n, body := range files {
if _, _, err := fgp.Put(fmt.Sprintf("%d", n), bytes.NewBufferString(body)); err != nil {
b.Fatal(err)
}
}
}
}