1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00
moby--moby/libnetwork/drivers/host/host_test.go
David Calavera cc02894a50 Move test specific functions to a testutils package.
This way we won't vendor test related functions in docker anymore.
It also moves netns related functions to a new ns package to be able to
call the ns init function in tests. I think this also helps with the
overall package isolation.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-09-07 13:33:28 -04:00

50 lines
1.2 KiB
Go

package host
import (
"testing"
_ "github.com/docker/libnetwork/testutils"
"github.com/docker/libnetwork/types"
)
func TestDriver(t *testing.T) {
d := &driver{}
if d.Type() != networkType {
t.Fatalf("Unexpected network type returned by driver")
}
err := d.CreateNetwork("first", nil)
if err != nil {
t.Fatal(err)
}
if d.network != "first" {
t.Fatalf("Unexpected network id stored")
}
err = d.CreateNetwork("second", nil)
if err == nil {
t.Fatalf("Second network creation should fail on this driver")
}
if _, ok := err.(types.ForbiddenError); !ok {
t.Fatalf("Second network creation failed with unexpected error type")
}
err = d.DeleteNetwork("first")
if err == nil {
t.Fatalf("network deletion should fail on this driver")
}
if _, ok := err.(types.ForbiddenError); !ok {
t.Fatalf("network deletion failed with unexpected error type")
}
// we don't really check if it is there or not, delete is not allowed for this driver, period.
err = d.DeleteNetwork("unknown")
if err == nil {
t.Fatalf("any network deletion should fail on this driver")
}
if _, ok := err.(types.ForbiddenError); !ok {
t.Fatalf("any network deletion failed with unexpected error type")
}
}