2019-05-31 01:11:13 +03:00
|
|
|
package file
|
|
|
|
|
|
|
|
import (
|
|
|
|
"testing"
|
|
|
|
|
2020-08-19 17:47:17 +03:00
|
|
|
"github.com/unistack-org/micro/v3/config/source"
|
2019-05-31 01:11:13 +03:00
|
|
|
)
|
|
|
|
|
|
|
|
func TestFormat(t *testing.T) {
|
|
|
|
opts := source.NewOptions()
|
|
|
|
e := opts.Encoder
|
|
|
|
|
|
|
|
testCases := []struct {
|
|
|
|
p string
|
|
|
|
f string
|
|
|
|
}{
|
|
|
|
{"/foo/bar.json", "json"},
|
|
|
|
{"/foo/bar.yaml", "yaml"},
|
|
|
|
{"/foo/bar.xml", "xml"},
|
|
|
|
{"/foo/bar.conf.ini", "ini"},
|
|
|
|
{"conf", e.String()},
|
|
|
|
}
|
|
|
|
|
|
|
|
for _, d := range testCases {
|
|
|
|
f := format(d.p, e)
|
|
|
|
if f != d.f {
|
|
|
|
t.Fatalf("%s: expected %s got %s", d.p, d.f, f)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|