Skip to content

Commit 0bce954

Browse files
committed
Implement benchmark
1 parent 69b5fe0 commit 0bce954

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

xxd_test.go

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package main
22

33
import (
44
"bytes"
5+
"crypto/rand"
56
"flag"
67
"fmt"
78
"io"
@@ -47,6 +48,19 @@ func TestXXD(t *testing.T) {
4748
}
4849
}
4950

51+
func BenchmarkXXD(b *testing.B) {
52+
b.StopTimer()
53+
data := make([]byte, b.N)
54+
if _, err := io.ReadFull(rand.Reader, data); err != nil {
55+
b.Fatal(err)
56+
}
57+
buf := bytes.NewBuffer(data)
58+
b.StartTimer()
59+
if err := XXD(buf, ioutil.Discard); err != nil {
60+
b.Fatal(err)
61+
}
62+
}
63+
5064
func xxdNative(r io.Reader, w io.Writer) error {
5165
xxd := exec.Command("xxd", "-")
5266
xxd.Stdin = r

0 commit comments

Comments
 (0)