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
|
package libnetwork
import (
"sort"
"testing"
"gotest.tools/v3/assert"
is "gotest.tools/v3/assert/cmp"
)
func TestSortByNetworkType(t *testing.T) {
nws := []*Network{
{name: "local2"},
{name: "ovl2", dynamic: true},
{name: "local3"},
{name: "ingress", ingress: true},
{name: "ovl3", dynamic: true},
{name: "local1"},
{name: "ovl1", dynamic: true},
}
eps := make([]*Endpoint, 0, len(nws))
for _, nw := range nws {
eps = append(eps, &Endpoint{
name: "ep-" + nw.name,
network: nw,
})
}
sort.Sort(ByNetworkType(eps))
actual := make([]string, 0, len(eps))
for _, ep := range eps {
actual = append(actual, ep.name)
}
expected := []string{
"ep-ovl2",
"ep-ovl3",
"ep-ovl1",
"ep-ingress",
"ep-local2",
"ep-local3",
"ep-local1",
}
assert.Check(t, is.DeepEqual(actual, expected))
}
|