Add unit test for pkg/healthcheck/sidecar.go (#5609)

Signed-off-by: Hu Shuai <hus.fnst@cn.fujitsu.com>
This commit is contained in:
Hu Shuai 2021-01-28 05:56:14 +08:00 committed by GitHub
parent c79d36d63a
commit 5e3d5190c3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 122 additions and 0 deletions

View File

@ -0,0 +1,122 @@
package healthcheck
import (
"reflect"
"testing"
"github.com/linkerd/linkerd2/pkg/k8s"
corev1 "k8s.io/api/core/v1"
)
func TestHasExistingSidecars(t *testing.T) {
for _, tc := range []struct {
podSpec *corev1.PodSpec
expected bool
}{
{
podSpec: &corev1.PodSpec{},
expected: false,
},
{
podSpec: &corev1.PodSpec{
Containers: []corev1.Container{
{
Name: "foo",
Image: "bar",
},
},
InitContainers: []corev1.Container{
{
Name: "foo",
Image: "bar",
},
},
},
expected: false,
},
{
podSpec: &corev1.PodSpec{
Containers: []corev1.Container{
{
Name: k8s.ProxyContainerName,
},
},
},
expected: true,
},
{
podSpec: &corev1.PodSpec{
Containers: []corev1.Container{
{
Name: "istio-proxy",
},
},
},
expected: true,
},
{
podSpec: &corev1.PodSpec{
Containers: []corev1.Container{
{
Image: "ghcr.io/linkerd/proxy:1.0.0",
},
},
},
expected: true,
},
{
podSpec: &corev1.PodSpec{
Containers: []corev1.Container{
{
Image: "gcr.io/istio-release/proxyv2:1.0.0",
},
},
},
expected: true,
},
{
podSpec: &corev1.PodSpec{
InitContainers: []corev1.Container{
{
Name: "linkerd-init",
},
},
},
expected: true,
},
{
podSpec: &corev1.PodSpec{
InitContainers: []corev1.Container{
{
Name: "istio-init",
},
},
},
expected: true,
},
{
podSpec: &corev1.PodSpec{
InitContainers: []corev1.Container{
{
Image: "ghcr.io/linkerd/proxy-init:1.0.0",
},
},
},
expected: true,
},
{
podSpec: &corev1.PodSpec{
InitContainers: []corev1.Container{
{
Image: "gcr.io/istio-release/proxy_init:1.0.0",
},
},
},
expected: true,
},
} {
if !reflect.DeepEqual(HasExistingSidecars(tc.podSpec), tc.expected) {
t.Errorf("expected: %v, got: %v", tc.expected, HasExistingSidecars(tc.podSpec))
}
}
}