52 lines
1.1 KiB
Go
52 lines
1.1 KiB
Go
|
package yaml
|
||
|
|
||
|
import (
|
||
|
"testing"
|
||
|
|
||
|
"github.com/franela/goblin"
|
||
|
"gopkg.in/yaml.v2"
|
||
|
)
|
||
|
|
||
|
func TestNetworks(t *testing.T) {
|
||
|
g := goblin.Goblin(t)
|
||
|
|
||
|
g.Describe("Networks", func() {
|
||
|
g.Describe("given a yaml file", func() {
|
||
|
|
||
|
g.It("should unmarshal", func() {
|
||
|
in := []byte("foo: { driver: overlay }")
|
||
|
out := networkList{}
|
||
|
err := yaml.Unmarshal(in, &out)
|
||
|
if err != nil {
|
||
|
g.Fail(err)
|
||
|
}
|
||
|
g.Assert(len(out.networks)).Equal(1)
|
||
|
g.Assert(out.networks[0].Name).Equal("foo")
|
||
|
g.Assert(out.networks[0].Driver).Equal("overlay")
|
||
|
})
|
||
|
|
||
|
g.It("should unmarshal named", func() {
|
||
|
in := []byte("foo: { name: bar }")
|
||
|
out := networkList{}
|
||
|
err := yaml.Unmarshal(in, &out)
|
||
|
if err != nil {
|
||
|
g.Fail(err)
|
||
|
}
|
||
|
g.Assert(len(out.networks)).Equal(1)
|
||
|
g.Assert(out.networks[0].Name).Equal("bar")
|
||
|
})
|
||
|
|
||
|
g.It("should unmarshal and use default driver", func() {
|
||
|
in := []byte("foo: { name: bar }")
|
||
|
out := networkList{}
|
||
|
err := yaml.Unmarshal(in, &out)
|
||
|
if err != nil {
|
||
|
g.Fail(err)
|
||
|
}
|
||
|
g.Assert(len(out.networks)).Equal(1)
|
||
|
g.Assert(out.networks[0].Driver).Equal("bridge")
|
||
|
})
|
||
|
})
|
||
|
})
|
||
|
}
|