kitty/tools/utils/images/serialize_test.go
Kovid Goyal 1c8e8e9530
Switch over to the new imaging backend for icat
Greatly simplifies a whole bunch of code. The new backend takes care of
falling back to ImageMagick efficiently itself.
2025-11-10 11:34:56 +05:30

31 lines
643 B
Go

package images
import (
"bytes"
"fmt"
"testing"
"github.com/google/go-cmp/cmp"
"github.com/kovidgoyal/kitty"
)
var _ = fmt.Print
func TestImageSerialize(t *testing.T) {
img, _, err := OpenImageFromReader(bytes.NewReader(kitty.KittyLogoAsPNGData))
if err != nil {
t.Fatal(err)
}
m, data := img.Serialize()
img2, err := ImageFromSerialized(m, data)
if err != nil {
t.Fatal(err)
}
m2, data2 := img2.Serialize()
if diff := cmp.Diff(m, m2); diff != "" {
t.Fatalf("Image metadata failed to roundtrip:\n%s", diff)
}
if diff := cmp.Diff(data, data2); diff != "" {
t.Fatalf("Image data failed to roundtrip:\n%s", diff)
}
}