forked from docker-archive/classicswarm
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnetwork_test.go
82 lines (74 loc) · 1.83 KB
/
network_test.go
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
package cluster
import (
"testing"
"github.com/samalba/dockerclient"
"github.com/stretchr/testify/assert"
)
func TestNetworksFilter(t *testing.T) {
engine := &Engine{ID: "id"}
networks := Networks{
{dockerclient.NetworkResource{
ID: "ababababab",
Name: "something",
}, engine},
{dockerclient.NetworkResource{
ID: "aaaaaaaaaa1",
Name: "network_name",
}, engine},
{dockerclient.NetworkResource{
ID: "bbbbbbbbbb",
Name: "somethingelse",
}, engine},
{dockerclient.NetworkResource{
ID: "aaaaaaaaa2",
Name: "foo",
}, engine},
}
filtered := networks.Filter([]string{"network_name"}, []string{"abababab"})
assert.Equal(t, len(filtered), 2)
for _, network := range filtered {
assert.True(t, network.ID == "aaaaaaaaaa1" || network.ID == "ababababab")
}
}
func TestNetworkUniq(t *testing.T) {
engine1 := &Engine{ID: "id1"}
engine2 := &Engine{ID: "id2"}
networks := Networks{
{dockerclient.NetworkResource{
ID: "global",
Name: "global",
Containers: map[string]dockerclient.EndpointResource{
"c1": {},
},
}, engine1},
{dockerclient.NetworkResource{
ID: "global",
Name: "global",
Containers: map[string]dockerclient.EndpointResource{
"c2": {},
},
}, engine2},
{dockerclient.NetworkResource{
ID: "local1",
Name: "local",
Containers: map[string]dockerclient.EndpointResource{
"c3": {},
},
}, engine1},
{dockerclient.NetworkResource{
ID: "local2",
Name: "local",
Containers: map[string]dockerclient.EndpointResource{
"c4": {},
},
}, engine2},
}
global := networks.Uniq().Get("global")
assert.NotNil(t, global)
assert.Equal(t, 2, len(global.Containers))
local1 := networks.Uniq().Get("local1")
assert.NotNil(t, local1)
assert.Equal(t, 1, len(local1.Containers))
local3 := networks.Uniq().Get("local3")
assert.Nil(t, local3)
}