mirror of
https://github.com/golang/go
synced 2024-11-24 21:10:04 -07:00
image/tiff: add a decode benchmark.
R=nigeltao CC=golang-dev https://golang.org/cl/4917049
This commit is contained in:
parent
3a1f29beec
commit
f172338a15
@ -5,10 +5,16 @@
|
||||
package tiff
|
||||
|
||||
import (
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"testing"
|
||||
)
|
||||
|
||||
// Read makes *buffer implements io.Reader, so that we can pass one to Decode.
|
||||
func (*buffer) Read([]byte) (int, os.Error) {
|
||||
panic("unimplemented")
|
||||
}
|
||||
|
||||
// TestNoRPS tries to decode an image that has no RowsPerStrip tag.
|
||||
// The tag is mandatory according to the spec but some software omits
|
||||
// it in the case of a single strip.
|
||||
@ -23,3 +29,22 @@ func TestNoRPS(t *testing.T) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
const filename = "testdata/video-001-uncompressed.tiff"
|
||||
|
||||
// BenchmarkDecode benchmarks the decoding of an image.
|
||||
func BenchmarkDecode(b *testing.B) {
|
||||
b.StopTimer()
|
||||
contents, err := ioutil.ReadFile(filename)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
r := &buffer{buf: contents}
|
||||
b.StartTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
_, err := Decode(r)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
BIN
src/pkg/image/tiff/testdata/video-001-uncompressed.tiff
vendored
Normal file
BIN
src/pkg/image/tiff/testdata/video-001-uncompressed.tiff
vendored
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user