mirror of
https://github.com/argoproj/argo-cd
synced 2026-05-18 23:08:28 +00:00
67 lines
1.7 KiB
Go
67 lines
1.7 KiB
Go
package cache
|
|
|
|
import (
|
|
"testing"
|
|
|
|
v1 "k8s.io/api/core/v1"
|
|
|
|
"github.com/argoproj/argo-cd/pkg/apis/application/v1alpha1"
|
|
"github.com/argoproj/argo-cd/util/kube"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestGetPodInfo(t *testing.T) {
|
|
pod := strToUnstructured(`
|
|
apiVersion: v1
|
|
kind: Pod
|
|
metadata:
|
|
name: helm-guestbook-pod
|
|
namespace: default
|
|
ownerReferences:
|
|
- apiVersion: extensions/v1beta1
|
|
kind: ReplicaSet
|
|
name: helm-guestbook-rs
|
|
resourceVersion: "123"
|
|
labels:
|
|
app: guestbook
|
|
spec:
|
|
containers:
|
|
- image: bar`)
|
|
|
|
node := &node{}
|
|
populateNodeInfo(pod, node)
|
|
assert.Equal(t, []v1alpha1.InfoItem{{Name: "Containers", Value: "0/1"}}, node.info)
|
|
assert.Equal(t, []string{"bar"}, node.images)
|
|
assert.Equal(t, &v1alpha1.ResourceNetworkingInfo{Labels: map[string]string{"app": "guestbook"}}, node.networkingInfo)
|
|
}
|
|
|
|
func TestGetServiceInfo(t *testing.T) {
|
|
node := &node{}
|
|
populateNodeInfo(testService, node)
|
|
assert.Equal(t, 0, len(node.info))
|
|
assert.Equal(t, &v1alpha1.ResourceNetworkingInfo{
|
|
TargetLabels: map[string]string{"app": "guestbook"},
|
|
Ingress: []v1.LoadBalancerIngress{{Hostname: "localhost"}},
|
|
}, node.networkingInfo)
|
|
}
|
|
|
|
func TestGetIngressInfo(t *testing.T) {
|
|
node := &node{}
|
|
populateNodeInfo(testIngress, node)
|
|
assert.Equal(t, 0, len(node.info))
|
|
assert.Equal(t, &v1alpha1.ResourceNetworkingInfo{
|
|
Ingress: []v1.LoadBalancerIngress{{IP: "107.178.210.11"}},
|
|
TargetRefs: []v1alpha1.ResourceRef{{
|
|
Namespace: "default",
|
|
Group: "",
|
|
Kind: kube.ServiceKind,
|
|
Name: "not-found-service",
|
|
}, {
|
|
Namespace: "default",
|
|
Group: "",
|
|
Kind: kube.ServiceKind,
|
|
Name: "helm-guestbook",
|
|
}},
|
|
}, node.networkingInfo)
|
|
}
|