diff --git a/pkg/kube/client.go b/pkg/kube/client.go index 9e54930ed..52b06c708 100644 --- a/pkg/kube/client.go +++ b/pkg/kube/client.go @@ -145,6 +145,7 @@ func (c *Client) Get(namespace string, reader io.Reader) (string, error) { // // Namespace will set the namespaces func (c *Client) Update(namespace string, currentReader, targetReader io.Reader) error { + fmt.Printf("\ncurrentReader: %v, \ntargetReader %v \n", currentReader, targetReader) current := c.NewBuilder(includeThirdPartyAPIs). ContinueOnError(). NamespaceParam(namespace). diff --git a/pkg/kube/client_test.go b/pkg/kube/client_test.go index 168488d82..691779182 100644 --- a/pkg/kube/client_test.go +++ b/pkg/kube/client_test.go @@ -19,6 +19,7 @@ package kube import ( "bytes" "encoding/json" + "fmt" "io" "io/ioutil" "net/http" @@ -29,6 +30,8 @@ import ( "k8s.io/kubernetes/pkg/api/unversioned" api "k8s.io/kubernetes/pkg/api/v1" "k8s.io/kubernetes/pkg/client/unversioned/fake" + client "k8s.io/kubernetes/pkg/client/unversioned" + "k8s.io/kubernetes/pkg/client/unversioned/testclient" "k8s.io/kubernetes/pkg/kubectl/resource" "k8s.io/kubernetes/pkg/runtime" ) @@ -65,6 +68,49 @@ func TestUpdateResource(t *testing.T) { } } +func TestUpdate(t *testing.T) { + guestbookInitial := ` + apiVersion: extensions/v1beta1 + kind: Deployment + metadata: + name: redis-master + spec: + replicas: 1 + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - name: master + image: gcr.io/google_containers/redis:e2e # or just image: redis + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + ` + + c := New(nil) + f := testclient.Fake{} + f.AddReactor("get", "services", func(action testclient.Action) (bool, runtime.Object, error) { + //create a service object with that name + return true, nil, nil + }) + + c.Client = func() (*client.Client, error) { + return &f, nil + } + fmt.Printf("FAKE: %#v \n", f) + + if err := c.Update("", strings.NewReader(guestbookInitial), strings.NewReader(guestbookManifest)); err != nil { + t.Errorf("Expected success, got failure on update: %v", err) + } +} + func TestPerform(t *testing.T) { tests := []struct { name string