fleet/orbit/pkg/swiftdialog/utils_test.go

42 lines
1.1 KiB
Go

package swiftdialog
import (
"bytes"
"os"
"testing"
"github.com/stretchr/testify/require"
)
func TestDecodeIconSize(t *testing.T) {
// test logo-wide.png
b, err := os.ReadFile("testdata/logo-wide.png")
require.NoError(t, err)
size, err := decodeIconSize(bytes.NewReader(b))
require.NoError(t, err)
require.Equal(t, uint(200), size)
// test logo-narrow.png
b, err = os.ReadFile("testdata/logo-narrow.png")
require.NoError(t, err)
size, err = decodeIconSize(bytes.NewReader(b))
require.NoError(t, err)
require.Equal(t, uint(80), size)
// test logo-square.png
b, err = os.ReadFile("testdata/logo-square.png")
require.NoError(t, err)
size, err = decodeIconSize(bytes.NewReader(b))
require.NoError(t, err)
require.Equal(t, uint(80), size)
// test unsupported image format
size, err = decodeIconSize(bytes.NewReader([]byte("invalid image format")))
require.ErrorContains(t, err, "image: unknown format")
require.Equal(t, uint(0), size)
// test empty image
size, err = decodeIconSize(bytes.NewReader([]byte{}))
require.Error(t, err)
require.Equal(t, uint(0), size)
}