drawio-export/pkg/drawio/options_test.go
Алексей Бадяев 36c7e7470d
Some checks failed
build / build_windows (push) Successful in 28s
build / build (push) Failing after 59s
Улучшены модульные тесты.
2024-11-21 10:26:33 +07:00

81 lines
1.2 KiB
Go

package drawio_test
import (
"testing"
"git.mousesoft.ru/ms/drawio-export/pkg/drawio"
"github.com/stretchr/testify/assert"
)
func TestFormat(t *testing.T) {
assert := assert.New(t)
testData := []struct {
name string
err error
format drawio.Format
ext string
}{
{
name: "pdf",
err: nil,
format: drawio.PDF,
ext: ".pdf",
},
{
name: "png",
err: nil,
format: drawio.PNG,
ext: ".png",
},
{
name: "jpg",
err: nil,
format: drawio.JPG,
ext: ".jpg",
},
{
name: "svg",
err: nil,
format: drawio.SVG,
ext: ".svg",
},
{
name: "vsdx",
err: nil,
format: drawio.VSDX,
ext: ".vsdx",
},
{
name: "xml",
err: nil,
format: drawio.XML,
ext: ".xml",
},
{
name: "svvg",
err: drawio.UnsupportedFormatError{"svvg"},
format: drawio.Format(""),
ext: "",
},
}
for _, test := range testData {
t.Run(test.name, func(t *testing.T) {
t.Parallel()
var v drawio.Format
err := (&v).Set(test.name)
if test.err == nil {
assert.Equal(test.name, test.format.String())
assert.NoError(err)
} else {
assert.ErrorIs(err, test.err)
assert.ErrorContains(err, test.err.Error())
}
})
}
}