Adding test for daemonset
This commit is contained in:
parent
a1ba2ea51b
commit
7a3b080e68
2
dependencies/config/config_test.go
vendored
2
dependencies/config/config_test.go
vendored
@ -45,7 +45,7 @@ func TestIsResolved(t *testing.T) {
|
||||
|
||||
entry := mocks.NewEntrypoint()
|
||||
|
||||
err := prepareEnv()
|
||||
err = prepareEnv()
|
||||
if err != nil {
|
||||
t.Errorf("Something went wrong: %v", err)
|
||||
}
|
||||
|
4
dependencies/daemonset/daemonset.go
vendored
4
dependencies/daemonset/daemonset.go
vendored
@ -30,6 +30,7 @@ func NewDaemonset(name string) Daemonset {
|
||||
func (d Daemonset) IsResolved(entrypoint entry.EntrypointInterface) (bool, error) {
|
||||
var myPodName string
|
||||
daemonset, err := entrypoint.Client().DaemonSets(entrypoint.GetNamespace()).Get(d.GetName())
|
||||
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
@ -40,13 +41,16 @@ func (d Daemonset) IsResolved(entrypoint entry.EntrypointInterface) (bool, error
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
|
||||
if myPodName := os.Getenv("POD_NAME"); myPodName == "" {
|
||||
panic("Environment variable POD_NAME not set")
|
||||
}
|
||||
|
||||
myPod, err := entrypoint.Client().Pods(entrypoint.GetNamespace()).Get(myPodName)
|
||||
if err != nil {
|
||||
panic(fmt.Sprintf("Getting POD: %v failed : %v", myPodName, err))
|
||||
}
|
||||
|
||||
myHost := myPod.Status.HostIP
|
||||
|
||||
for _, pod := range pods.Items {
|
||||
|
19
dependencies/daemonset/daemonset_test.go
vendored
Normal file
19
dependencies/daemonset/daemonset_test.go
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
package daemonset
|
||||
|
||||
import (
|
||||
"os"
|
||||
"testing"
|
||||
|
||||
mocks "github.com/stackanetes/kubernetes-entrypoint/mocks"
|
||||
)
|
||||
|
||||
func TestResolveDaemonset(t *testing.T) {
|
||||
entrypoint := mocks.NewEntrypoint()
|
||||
daemonset := NewDaemonset("lgtm")
|
||||
os.Setenv("POD_NAME", "podlist")
|
||||
status, err := daemonset.IsResolved(entrypoint)
|
||||
if err != nil {
|
||||
t.Errorf("Something went wrong status: %s : %v", status, err)
|
||||
}
|
||||
|
||||
}
|
@ -2,7 +2,9 @@ package mocks
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
unv "k8s.io/kubernetes/pkg/api/unversioned"
|
||||
"k8s.io/kubernetes/pkg/apis/extensions"
|
||||
"k8s.io/kubernetes/pkg/client/unversioned"
|
||||
"k8s.io/kubernetes/pkg/watch"
|
||||
@ -17,6 +19,12 @@ func (d dClient) Get(name string) (*extensions.DaemonSet, error) {
|
||||
}
|
||||
ds := new(extensions.DaemonSet)
|
||||
ds.Name = name
|
||||
sel := unv.LabelSelector{
|
||||
MatchLabels: map[string]string{
|
||||
"name": "test",
|
||||
},
|
||||
}
|
||||
ds.Spec.Selector = &sel
|
||||
return ds, nil
|
||||
}
|
||||
func (d dClient) Create(ds *extensions.DaemonSet) (*extensions.DaemonSet, error) {
|
||||
|
36
mocks/pod.go
36
mocks/pod.go
@ -13,16 +13,17 @@ type pClient struct {
|
||||
}
|
||||
|
||||
func (p pClient) Get(name string) (*api.Pod, error) {
|
||||
if name == "lgtm" {
|
||||
pod := new(api.Pod)
|
||||
container_one := api.ContainerStatus{
|
||||
pod := new(api.Pod)
|
||||
pod.Name = name
|
||||
pod.Status.ContainerStatuses = []api.ContainerStatus{
|
||||
api.ContainerStatus{
|
||||
Name: "container_test",
|
||||
Ready: true,
|
||||
}
|
||||
pod.Status.ContainerStatuses = []api.ContainerStatus{container_one}
|
||||
return pod, nil
|
||||
},
|
||||
}
|
||||
return nil, fmt.Errorf("Mock pod didnt work")
|
||||
pod.Status.HostIP = "127.0.0.1"
|
||||
return pod, nil
|
||||
|
||||
}
|
||||
func (p pClient) Create(pod *api.Pod) (*api.Pod, error) {
|
||||
return nil, fmt.Errorf("Not implemented")
|
||||
@ -32,7 +33,26 @@ func (p pClient) Delete(name string, options *api.DeleteOptions) error {
|
||||
return fmt.Errorf("Not implemented")
|
||||
}
|
||||
func (p pClient) List(options api.ListOptions) (*api.PodList, error) {
|
||||
return nil, fmt.Errorf("Not implemented")
|
||||
pod := new(api.Pod)
|
||||
pod.Name = "podlist"
|
||||
pod.Status.ContainerStatuses = []api.ContainerStatus{
|
||||
api.ContainerStatus{
|
||||
Name: "container_test",
|
||||
Ready: true,
|
||||
},
|
||||
}
|
||||
pod.Status.HostIP = "127.0.0.1"
|
||||
pod.Status.Conditions = []api.PodCondition{
|
||||
api.PodCondition{
|
||||
Type: api.PodReady,
|
||||
Status: "True",
|
||||
},
|
||||
}
|
||||
podList := new(api.PodList)
|
||||
podList.Items = []api.Pod{
|
||||
*pod,
|
||||
}
|
||||
return podList, nil
|
||||
}
|
||||
|
||||
func (p pClient) Update(pod *api.Pod) (*api.Pod, error) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user