|
@@ -42,6 +42,16 @@ func TestFilterNetworks(t *testing.T) {
|
|
Driver: "mykvdriver",
|
|
Driver: "mykvdriver",
|
|
Scope: "global",
|
|
Scope: "global",
|
|
},
|
|
},
|
|
|
|
+ {
|
|
|
|
+ Name: "networkwithcontainer",
|
|
|
|
+ Driver: "nwc",
|
|
|
|
+ Scope: "local",
|
|
|
|
+ Containers: map[string]types.EndpointResource{
|
|
|
|
+ "customcontainer": {
|
|
|
|
+ Name: "customendpoint",
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ },
|
|
}
|
|
}
|
|
|
|
|
|
bridgeDriverFilters := filters.NewArgs()
|
|
bridgeDriverFilters := filters.NewArgs()
|
|
@@ -71,11 +81,18 @@ func TestFilterNetworks(t *testing.T) {
|
|
globalScopeFilters := filters.NewArgs()
|
|
globalScopeFilters := filters.NewArgs()
|
|
globalScopeFilters.Add("scope", "global")
|
|
globalScopeFilters.Add("scope", "global")
|
|
|
|
|
|
|
|
+ trueDanglingFilters := filters.NewArgs()
|
|
|
|
+ trueDanglingFilters.Add("dangling", "true")
|
|
|
|
+
|
|
|
|
+ falseDanglingFilters := filters.NewArgs()
|
|
|
|
+ falseDanglingFilters.Add("dangling", "false")
|
|
|
|
+
|
|
testCases := []struct {
|
|
testCases := []struct {
|
|
filter filters.Args
|
|
filter filters.Args
|
|
resultCount int
|
|
resultCount int
|
|
err string
|
|
err string
|
|
name string
|
|
name string
|
|
|
|
+ results []string
|
|
}{
|
|
}{
|
|
{
|
|
{
|
|
filter: bridgeDriverFilters,
|
|
filter: bridgeDriverFilters,
|
|
@@ -97,7 +114,7 @@ func TestFilterNetworks(t *testing.T) {
|
|
},
|
|
},
|
|
{
|
|
{
|
|
filter: customDriverFilters,
|
|
filter: customDriverFilters,
|
|
- resultCount: 3,
|
|
|
|
|
|
+ resultCount: 4,
|
|
err: "",
|
|
err: "",
|
|
name: "custom driver filters",
|
|
name: "custom driver filters",
|
|
},
|
|
},
|
|
@@ -115,7 +132,7 @@ func TestFilterNetworks(t *testing.T) {
|
|
},
|
|
},
|
|
{
|
|
{
|
|
filter: localScopeFilters,
|
|
filter: localScopeFilters,
|
|
- resultCount: 4,
|
|
|
|
|
|
+ resultCount: 5,
|
|
err: "",
|
|
err: "",
|
|
name: "local scope filters",
|
|
name: "local scope filters",
|
|
},
|
|
},
|
|
@@ -131,6 +148,20 @@ func TestFilterNetworks(t *testing.T) {
|
|
err: "",
|
|
err: "",
|
|
name: "global scope filters",
|
|
name: "global scope filters",
|
|
},
|
|
},
|
|
|
|
+ {
|
|
|
|
+ filter: trueDanglingFilters,
|
|
|
|
+ resultCount: 3,
|
|
|
|
+ err: "",
|
|
|
|
+ name: "dangling filter is 'True'",
|
|
|
|
+ results: []string{"myoverlay", "mydrivernet", "mykvnet"},
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ filter: falseDanglingFilters,
|
|
|
|
+ resultCount: 4,
|
|
|
|
+ err: "",
|
|
|
|
+ name: "dangling filter is 'False'",
|
|
|
|
+ results: []string{"host", "bridge", "none", "networkwithcontainer"},
|
|
|
|
+ },
|
|
}
|
|
}
|
|
|
|
|
|
for _, testCase := range testCases {
|
|
for _, testCase := range testCases {
|
|
@@ -157,6 +188,18 @@ func TestFilterNetworks(t *testing.T) {
|
|
if len(result) != testCase.resultCount {
|
|
if len(result) != testCase.resultCount {
|
|
t.Fatalf("expect '%d' networks, got '%d' networks", testCase.resultCount, len(result))
|
|
t.Fatalf("expect '%d' networks, got '%d' networks", testCase.resultCount, len(result))
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ if len(testCase.results) > 0 {
|
|
|
|
+ resultMap := make(map[string]bool)
|
|
|
|
+ for _, r := range result {
|
|
|
|
+ resultMap[r.Name] = true
|
|
|
|
+ }
|
|
|
|
+ for _, r := range testCase.results {
|
|
|
|
+ if _, ok := resultMap[r]; !ok {
|
|
|
|
+ t.Fatalf("expected result: '%s' not found", r)
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}
|
|
}
|
|
})
|
|
})
|
|
}
|
|
}
|