It("does not log any stages", func() { err := deploymentManager.Cleanup(fakeStage) Expect(err).ToNot(HaveOccurred()) Expect(fakeStage.PerformCalls).To(BeEmpty()) }) }) Context("orphan disk records exist", func() { BeforeEach(func() { _, err := diskRepo.Save("orphan-disk-cid", 100, nil) Expect(err).ToNot(HaveOccurred()) }) It("deletes the unused disks", func() { mockCloud.EXPECT().DeleteDisk("orphan-disk-cid") err := deploymentManager.Cleanup(fakeStage) Expect(err).ToNot(HaveOccurred()) diskRecords, err := diskRepo.All() Expect(err).ToNot(HaveOccurred()) Expect(diskRecords).To(BeEmpty(), "expected no disk records") }) It("logs delete stage", func() { mockCloud.EXPECT().DeleteDisk("orphan-disk-cid") err := deploymentManager.Cleanup(fakeStage) Expect(err).ToNot(HaveOccurred())
fs, logger, doGet, ) } var expectDeployFlow = func() { agentID := "fake-uuid-0" vmCID := "fake-vm-cid-1" diskCID := "fake-disk-cid-1" diskSize := 1024 //TODO: use a real StateBuilder and test mockBlobstore.Add & mockAgentClient.CompilePackage gomock.InOrder( mockCloud.EXPECT().CreateStemcell(stemcellImagePath, stemcellCloudProperties).Return(stemcellCID, nil), mockCloud.EXPECT().CreateVM(agentID, stemcellCID, vmCloudProperties, networkInterfaces, vmEnv).Return(vmCID, nil), mockCloud.EXPECT().SetVMMetadata(vmCID, gomock.Any()).Return(nil), mockAgentClient.EXPECT().Ping().Return("any-state", nil), mockCloud.EXPECT().CreateDisk(diskSize, diskCloudProperties, vmCID).Return(diskCID, nil), mockCloud.EXPECT().AttachDisk(vmCID, diskCID), mockAgentClient.EXPECT().MountDisk(diskCID), mockAgentClient.EXPECT().Stop(), mockAgentClient.EXPECT().Apply(applySpec), mockAgentClient.EXPECT().Start(), mockAgentClient.EXPECT().GetState().Return(agentRunningState, nil), ) }
mockStateBuilderFactory *mock_instance_state.MockBuilderFactory mockStateBuilder *mock_instance_state.MockBuilder mockState *mock_instance_state.MockState mockBlobstore *mock_blobstore.MockBlobstore fakeStage *fakebiui.FakeStage deploymentFactory Factory deployment Deployment ) var expectNormalFlow = func() { gomock.InOrder( mockCloud.EXPECT().HasVM("fake-vm-cid").Return(true, nil), mockAgentClient.EXPECT().Ping().Return("any-state", nil), // ping to make sure agent is responsive mockAgentClient.EXPECT().Stop(), // stop all jobs mockAgentClient.EXPECT().ListDisk().Return([]string{"fake-disk-cid"}, nil), // get mounted disks to be unmounted mockAgentClient.EXPECT().UnmountDisk("fake-disk-cid"), mockCloud.EXPECT().DeleteVM("fake-vm-cid"), mockCloud.EXPECT().DeleteDisk("fake-disk-cid"), mockCloud.EXPECT().DeleteStemcell("fake-stemcell-cid"), ) } var allowApplySpecToBeCreated = func() { jobName := "fake-job-name" jobIndex := 0 applySpec := bias.ApplySpec{