提交 f94b1674 编写于 作者: Y Yanshu Zhao

Change tests into a loop

上级 f044b1fa
...@@ -32,53 +32,53 @@ var dockerInspectGetterMock = func(name string) (*RunResult, error) { ...@@ -32,53 +32,53 @@ var dockerInspectGetterMock = func(name string) (*RunResult, error) {
} }
func TestDockerInspectWithMTU(t *testing.T) { func TestDockerInspectWithMTU(t *testing.T) {
dockerInspectResponseWithMtu := `{"Name": "m2","Driver": "bridge","Subnet": "172.19.0.0/16","Gateway": "172.19.0.1","MTU": 9216, "ContainerIPs": []}` var tests = []struct {
name string
// setting up mock funcs dockerInspectResponse string
dockerResponse = dockerInspectResponseWithMtu gateway string
dockerInsepctGetter = dockerInspectGetterMock subnetIP string
mtu int
netInfo, err := dockerNetworkInspect("m2") }{
{
if err != nil { name: "withMTU",
t.Errorf("Expected not to have error but got %v", err) dockerInspectResponse: `{"Name": "m2","Driver": "bridge","Subnet": "172.19.0.0/16","Gateway": "172.19.0.1","MTU": 9216, "ContainerIPs": []}`,
} gateway: "172.19.0.1",
subnetIP: "172.19.0.0",
if netInfo.mtu != 9216 { mtu: 9216,
t.Errorf("Expected not to have MTU as 9216 but got %v", netInfo.mtu) },
} {
name: "withoutMTU",
if !netInfo.gateway.Equal(net.ParseIP("172.19.0.1")) { dockerInspectResponse: `{"Name": "m2","Driver": "bridge","Subnet": "172.19.0.0/16","Gateway": "172.19.0.1","MTU": 0, "ContainerIPs": []}`,
t.Errorf("Expected not to have gateway as 172.19.0.1 but got %v", netInfo.gateway) gateway: "172.19.0.1",
subnetIP: "172.19.0.0",
mtu: 0,
},
} }
for _, tc := range tests {
t.Run(tc.name, func(t *testing.T) {
dockerInspectResponseWithMtu := tc.dockerInspectResponse
if !netInfo.subnet.IP.Equal(net.ParseIP("172.19.0.0")) { // setting up mock funcs
t.Errorf("Expected not to have subnet as 172.19.0.0 but got %v", netInfo.gateway) dockerResponse = dockerInspectResponseWithMtu
} dockerInsepctGetter = dockerInspectGetterMock
}
func TestDockerInspectWithoutMTU(t *testing.T) { netInfo, err := dockerNetworkInspect("m2")
dockerInspectResponseWithMtu := `{"Name": "m2","Driver": "bridge","Subnet": "172.19.0.0/16","Gateway": "172.19.0.1","MTU": 0, "ContainerIPs": []}`
// setting up mock funcs if err != nil {
dockerResponse = dockerInspectResponseWithMtu t.Errorf("Expected not to have error but got %v", err)
dockerInsepctGetter = dockerInspectGetterMock }
netInfo, err := dockerNetworkInspect("m2") if netInfo.mtu != tc.mtu {
t.Errorf("Expected not to have MTU as %v but got %v", tc.mtu, netInfo.mtu)
if err != nil { }
t.Errorf("Expected not to have error but got %v", err)
}
if netInfo.mtu != 0 { if !netInfo.gateway.Equal(net.ParseIP(tc.gateway)) {
t.Errorf("Expected not to have MTU as 0 but got %v", netInfo.mtu) t.Errorf("Expected not to have gateway as %v but got %v", tc.gateway, netInfo.gateway)
} }
if !netInfo.gateway.Equal(net.ParseIP("172.19.0.1")) {
t.Errorf("Expected not to have gateway as 172.19.0.1 but got %v", netInfo.gateway)
}
if !netInfo.subnet.IP.Equal(net.ParseIP("172.19.0.0")) { if !netInfo.subnet.IP.Equal(net.ParseIP(tc.subnetIP)) {
t.Errorf("Expected not to have subnet as 172.19.0.0 but got %v", netInfo.gateway) t.Errorf("Expected not to have subnet as %v but got %v", tc.subnetIP, netInfo.gateway)
}
})
} }
} }
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册