Signed-off-by: Austin Abro <AustinAbro321@gmail.com>
pull/13604/head
Austin Abro 8 months ago
parent d07f546003
commit f9736d9022
No known key found for this signature in database
GPG Key ID: 92EB5159E403F9D6

@ -43,7 +43,7 @@ import (
"sigs.k8s.io/cli-utils/pkg/testutil"
)
var podCurrent = `
var podCurrentManifest = `
apiVersion: v1
kind: Pod
metadata:
@ -56,7 +56,7 @@ status:
phase: Running
`
var podNoStatus = `
var podNoStatusManifest = `
apiVersion: v1
kind: Pod
metadata:
@ -64,7 +64,7 @@ metadata:
namespace: ns
`
var jobNoStatus = `
var jobNoStatusManifest = `
apiVersion: batch/v1
kind: Job
metadata:
@ -73,7 +73,7 @@ metadata:
generation: 1
`
var jobComplete = `
var jobCompleteManifest = `
apiVersion: batch/v1
kind: Job
metadata:
@ -88,7 +88,7 @@ status:
status: "True"
`
var pausedDeploymentYaml = `
var pausedDeploymentManifest = `
apiVersion: apps/v1
kind: Deployment
metadata:
@ -149,20 +149,20 @@ func TestStatusWaitForDelete(t *testing.T) {
t.Parallel()
tests := []struct {
name string
objToCreate []string
toDelete []string
manifestsToCreate []string
manifestsToDelete []string
expectErrs []error
}{
{
name: "wait for pod to be deleted",
objToCreate: []string{podCurrent},
toDelete: []string{podCurrent},
manifestsToCreate: []string{podCurrentManifest},
manifestsToDelete: []string{podCurrentManifest},
expectErrs: nil,
},
{
name: "error when not all objects are deleted",
objToCreate: []string{jobComplete, podCurrent},
toDelete: []string{jobComplete},
manifestsToCreate: []string{jobCompleteManifest, podCurrentManifest},
manifestsToDelete: []string{jobCompleteManifest},
expectErrs: []error{errors.New("resource still exists, name: good-pod, kind: Pod, status: Current"), errors.New("context deadline exceeded")},
},
}
@ -184,9 +184,9 @@ func TestStatusWaitForDelete(t *testing.T) {
log: t.Logf,
}
createdObjs := []runtime.Object{}
for _, objYaml := range tt.objToCreate {
for _, manifest := range tt.manifestsToCreate {
m := make(map[string]interface{})
err := yaml.Unmarshal([]byte(objYaml), &m)
err := yaml.Unmarshal([]byte(manifest), &m)
assert.NoError(t, err)
resource := &unstructured.Unstructured{Object: m}
createdObjs = append(createdObjs, resource)
@ -194,9 +194,9 @@ func TestStatusWaitForDelete(t *testing.T) {
err = fakeClient.Tracker().Create(gvr, resource, resource.GetNamespace())
assert.NoError(t, err)
}
for _, objYaml := range tt.toDelete {
for _, manifest := range tt.manifestsToDelete {
m := make(map[string]interface{})
err := yaml.Unmarshal([]byte(objYaml), &m)
err := yaml.Unmarshal([]byte(manifest), &m)
assert.NoError(t, err)
resource := &unstructured.Unstructured{Object: m}
gvr := getGVR(t, fakeMapper, resource)
@ -227,40 +227,40 @@ func TestStatusWait(t *testing.T) {
t.Parallel()
tests := []struct {
name string
objYamls []string
objManifests []string
expectErrs []error
waitForJobs bool
}{
{
name: "Job is complete",
objYamls: []string{jobComplete},
objManifests: []string{jobCompleteManifest},
expectErrs: nil,
},
{
name: "Job is not complete",
objYamls: []string{jobNoStatus},
objManifests: []string{jobNoStatusManifest},
expectErrs: []error{errors.New("resource not ready, name: test, kind: Job, status: InProgress"), errors.New("context deadline exceeded")},
waitForJobs: true,
},
{
name: "Job is not ready, but we pass wait anyway",
objYamls: []string{jobNoStatus},
objManifests: []string{jobNoStatusManifest},
expectErrs: nil,
waitForJobs: false,
},
{
name: "Pod is ready",
objYamls: []string{podCurrent},
objManifests: []string{podCurrentManifest},
expectErrs: nil,
},
{
name: "one of the pods never becomes ready",
objYamls: []string{podNoStatus, podCurrent},
objManifests: []string{podNoStatusManifest, podCurrentManifest},
expectErrs: []error{errors.New("resource not ready, name: in-progress-pod, kind: Pod, status: InProgress"), errors.New("context deadline exceeded")},
},
{
name: "paused deployment passes",
objYamls: []string{pausedDeploymentYaml},
objManifests: []string{pausedDeploymentManifest},
expectErrs: nil,
},
}
@ -282,7 +282,7 @@ func TestStatusWait(t *testing.T) {
}
objs := []runtime.Object{}
for _, podYaml := range tt.objYamls {
for _, podYaml := range tt.objManifests {
m := make(map[string]interface{})
err := yaml.Unmarshal([]byte(podYaml), &m)
assert.NoError(t, err)

Loading…
Cancel
Save