Expect(err).ToNot(HaveOccurred()) }) It("deletes unused disks", func() { err := manager.DeleteUnused(fakeStage) Expect(err).ToNot(HaveOccurred()) Expect(fakeCloud.DeleteDiskInputs).To(Equal([]fakebicloud.DeleteDiskInput{ {DiskCID: "fake-disk-cid-1"}, {DiskCID: "fake-disk-cid-3"}, })) Expect(fakeStage.PerformCalls).To(Equal([]*fakebiui.PerformCall{ {Name: "Deleting unused disk 'fake-disk-cid-1'"}, {Name: "Deleting unused disk 'fake-disk-cid-3'"}, })) currentRecord, found, err := diskRepo.FindCurrent() Expect(err).ToNot(HaveOccurred()) Expect(found).To(BeTrue()) Expect(currentRecord).To(Equal(secondDiskRecord)) records, err := diskRepo.All() Expect(err).ToNot(HaveOccurred()) Expect(records).To(Equal([]biconfig.DiskRecord{ secondDiskRecord, })) }) }) })
{Name: "Deleting VM 'fake-vm-cid'"}, {Name: "Deleting disk 'fake-disk-cid'"}, {Name: "Deleting stemcell 'fake-stemcell-cid'"}, })) }) It("clears current vm, disk and stemcell", func() { expectNormalFlow() err := deployment.Delete(fakeStage) Expect(err).ToNot(HaveOccurred()) _, found, err := vmRepo.FindCurrent() Expect(found).To(BeFalse(), "should be no current VM") _, found, err = diskRepo.FindCurrent() Expect(found).To(BeFalse(), "should be no current disk") diskRecords, err := diskRepo.All() Expect(err).ToNot(HaveOccurred()) Expect(diskRecords).To(BeEmpty(), "expected no disk records") _, found, err = stemcellRepo.FindCurrent() Expect(found).To(BeFalse(), "should be no current stemcell") stemcellRecords, err := stemcellRepo.All() Expect(err).ToNot(HaveOccurred()) Expect(stemcellRecords).To(BeEmpty(), "expected no stemcell records") }) //TODO: It'd be nice to test recovering after agent was responsive, before timeout (hard to do with gomock)