func()

in fixtures.go [607:646]


func (t *TestVM) Resume() error {
	// TODO: better solution than a shared counter for name collisions.
	t.testWorkflow.counter++
	stepSuffix := fmt.Sprintf("%s-%d", t.name, t.testWorkflow.counter)

	lastStep, err := t.testWorkflow.getLastStepForVM(t.name)
	if err != nil {
		return fmt.Errorf("failed resolve last step")
	}

	waitSuspended, err := t.testWorkflow.wf.NewStep(fmt.Sprintf("wait-suspended-%s", stepSuffix))
	if err != nil {
		return err
	}
	waitSuspended.WaitForInstancesSignal = &daisy.WaitForInstancesSignal{
		{Name: t.name, Status: []string{"SUSPENDED"}},
	}

	createStep := t.testWorkflow.wf.Steps[createVMsStepName]

	if err := t.testWorkflow.wf.AddDependency(waitSuspended, createStep); err != nil {
		return err
	}

	resume, err := t.testWorkflow.wf.NewStep(fmt.Sprintf("resume-%s", stepSuffix))
	if err != nil {
		return err
	}
	resume.Resume = &daisy.Resume{
		Instance: t.name,
	}
	if err := t.testWorkflow.wf.AddDependency(resume, waitSuspended); err != nil {
		return err
	}
	if err := t.testWorkflow.wf.AddDependency(lastStep, resume); err != nil {
		return err
	}

	return nil
}