BeforeEach(func() { handle1Volume = new(bfakes.FakeVolume) handle2Volume = new(bfakes.FakeVolume) expectedHandle1Volume = new(wfakes.FakeVolume) expectedHandle2Volume = new(wfakes.FakeVolume) fakeContainer.PropertiesReturns(garden.Properties{ "concourse:volumes": `["handle-1","handle-2"]`, "concourse:volume-mounts": `{"handle-1":"/handle-1/path","handle-2":"/handle-2/path"}`, }, nil) fakeBaggageclaimClient.LookupVolumeStub = func(logger lager.Logger, handle string) (baggageclaim.Volume, bool, error) { if handle == "handle-1" { return handle1Volume, true, nil } else if handle == "handle-2" { return handle2Volume, true, nil } else { panic("unknown handle: " + handle) } } fakeVolumeFactory.BuildStub = func(vol baggageclaim.Volume) (Volume, error) { if vol == handle1Volume { return expectedHandle1Volume, nil } else if vol == handle2Volume { return expectedHandle2Volume, nil } else { panic("unknown volume: " + vol.Handle()) } } })
fakePipelineDB *dbfakes.FakePipelineDB ) BeforeEach(func() { fakeWorkerClient = new(wfakes.FakeClient) workerA = new(wfakes.FakeWorker) workerABaggageClaimClient = new(bcfakes.FakeClient) workerA.VolumeManagerReturns(workerABaggageClaimClient, true) volumeA1 = new(bcfakes.FakeVolume) volumeA2 = new(bcfakes.FakeVolume) workerABaggageClaimClient.LookupVolumeStub = func(logger lager.Logger, handle string) (baggageclaim.Volume, bool, error) { switch handle { case "volume-a1": return volumeA1, true, nil case "volume-a2": return volumeA2, true, nil default: panic("unknown volume handle") } } workerB = new(wfakes.FakeWorker) workerBBaggageClaimClient = new(bcfakes.FakeClient) workerB.VolumeManagerReturns(workerBBaggageClaimClient, true) volumeB1 = new(bcfakes.FakeVolume) workerBBaggageClaimClient.LookupVolumeReturns(volumeB1, true, nil) fakeWorkerClient.GetWorkerStub = func(name string) (worker.Worker, error) { switch name { case "worker-a": return workerA, nil
fakeVolumes := map[string]*bcfakes.FakeVolume{} var savedVolumes []db.SavedVolume for _, volume := range example.volumeData { savedVolumes = append(savedVolumes, db.SavedVolume{ Volume: volume, }) fakeVolumes[volume.Handle] = new(bcfakes.FakeVolume) } fakeBaggageCollectorDB.GetVolumesReturns(savedVolumes, nil) fakeBaggageClaimClient.LookupVolumeStub = func(_ lager.Logger, handle string) (baggageclaim.Volume, bool, error) { vol, ok := fakeVolumes[handle] Expect(ok).To(BeTrue()) return vol, true, nil } err = baggageCollector.Collect() Expect(err).NotTo(HaveOccurred()) Expect(fakeBaggageClaimClient.LookupVolumeCallCount()).To(Equal(len(example.expectedTTLs))) var actualHandles []string for i := 0; i < fakeBaggageClaimClient.LookupVolumeCallCount(); i++ { _, actualHandle := fakeBaggageClaimClient.LookupVolumeArgsForCall(i) actualHandles = append(actualHandles, actualHandle) } var expectedHandles []string for handle, expectedTTL := range example.expectedTTLs {