summaryrefslogtreecommitdiff
path: root/libnetwork/drivers/host/host_test.go
blob: caa77df7c5e2cdd90ad8e047ac1971a6338074df (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
package host

import (
	"testing"

	"github.com/docker/docker/libnetwork/types"
)

func TestDriver(t *testing.T) {
	d := &driver{}

	if d.Type() != networkType {
		t.Fatal("Unexpected network type returned by driver")
	}

	err := d.CreateNetwork("first", nil, nil, nil, nil)
	if err != nil {
		t.Fatal(err)
	}

	if d.network != "first" {
		t.Fatal("Unexpected network id stored")
	}

	err = d.CreateNetwork("second", nil, nil, nil, nil)
	if err == nil {
		t.Fatal("Second network creation should fail on this driver")
	}
	if _, ok := err.(types.ForbiddenError); !ok {
		t.Fatal("Second network creation failed with unexpected error type")
	}

	err = d.DeleteNetwork("first")
	if err == nil {
		t.Fatal("network deletion should fail on this driver")
	}
	if _, ok := err.(types.ForbiddenError); !ok {
		t.Fatal("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.Fatal("any network deletion should fail on this driver")
	}
	if _, ok := err.(types.ForbiddenError); !ok {
		t.Fatal("any network deletion failed with unexpected error type")
	}
}