package action_test

import (
	"errors"

	. "github.com/onsi/ginkgo"
	. "github.com/onsi/gomega"

	. "github.com/cloudcredo/bosh-lattice-cpi/action"

	fakedisk "github.com/cloudcredo/bosh-lattice-cpi/softlayer/disk/fakes"
)

var _ = Describe("DeleteDisk", func() {
	var (
		diskFinder *fakedisk.FakeFinder
		action     DeleteDisk
	)

	BeforeEach(func() {
		diskFinder = &fakedisk.FakeFinder{}
		action = NewDeleteDisk(diskFinder)
	})

	Describe("Run", func() {
		It("tries to find disk with given disk cid", func() {
			_, err := action.Run(1234)
			Expect(err).ToNot(HaveOccurred())

			Expect(diskFinder.FindID).To(Equal(1234))
		})
import (
	"errors"

	. "github.com/onsi/ginkgo"
	. "github.com/onsi/gomega"

	. "github.com/cloudcredo/bosh-lattice-cpi/action"

	fakedisk "github.com/cloudcredo/bosh-lattice-cpi/softlayer/disk/fakes"
	fakevm "github.com/cloudcredo/bosh-lattice-cpi/softlayer/vm/fakes"
)

var _ = Describe("DetachDisk", func() {
	var (
		vmFinder   *fakevm.FakeFinder
		diskFinder *fakedisk.FakeFinder
		action     DetachDisk
	)

	BeforeEach(func() {
		vmFinder = &fakevm.FakeFinder{}
		diskFinder = &fakedisk.FakeFinder{}
		action = NewDetachDisk(vmFinder, diskFinder)
	})

	Describe("Run", func() {
		It("tries to find VM with given VM cid", func() {
			vmFinder.FindFound = true
			vmFinder.FindVM = fakevm.NewFakeVM(1234)

			diskFinder.FindFound = true