mirror of
https://github.com/golang/go
synced 2024-11-24 23:37:56 -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
|
package tiff
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"io/ioutil"
|
||||||
"os"
|
"os"
|
||||||
"testing"
|
"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.
|
// TestNoRPS tries to decode an image that has no RowsPerStrip tag.
|
||||||
// The tag is mandatory according to the spec but some software omits
|
// The tag is mandatory according to the spec but some software omits
|
||||||
// it in the case of a single strip.
|
// it in the case of a single strip.
|
||||||
@ -23,3 +29,22 @@ func TestNoRPS(t *testing.T) {
|
|||||||
t.Fatal(err)
|
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