var ( containerDelegate *fake_internal.FakeContainerDelegate residualLRPOperation *generator.ResidualInstanceLRPOperation lrpKey models.ActualLRPKey instanceKey models.ActualLRPInstanceKey expectedContainerGuid string ) BeforeEach(func() { lrpKey = models.NewActualLRPKey("the-process-guid", 0, "the-domain") instanceKey = models.NewActualLRPInstanceKey("the-instance-guid", "the-cell-id") containerDelegate = new(fake_internal.FakeContainerDelegate) residualLRPOperation = generator.NewResidualInstanceLRPOperation(logger, fakeBBS, containerDelegate, lrpKey, instanceKey) expectedContainerGuid = rep.LRPContainerGuid(lrpKey.GetProcessGuid(), instanceKey.GetInstanceGuid()) }) Describe("Key", func() { It("returns the InstanceGuid", func() { Expect(residualLRPOperation.Key()).To(Equal("the-instance-guid")) }) }) Describe("Execute", func() { const sessionName = "test.executing-residual-instance-lrp-operation" JustBeforeEach(func() { residualLRPOperation.Execute() })
It("responds without an error", func() { Expect(getErr).NotTo(HaveOccurred()) }) It("fetches all of the actual lrps", func() { Expect(actualLRPResponses).To(HaveLen(2)) }) It("has the correct data from the bbs", func() { expectedResponses := []receptor.ActualLRPResponse{} instanceLRPGroup, err := bbsClient.ActualLRPGroupByProcessGuidAndIndex("process-guid-1", 1) Expect(err).NotTo(HaveOccurred()) expectedResponses = append(expectedResponses, serialization.ActualLRPProtoToResponse(*instanceLRPGroup.GetInstance(), false)) evacuatingLRPGroup, err := bbsClient.ActualLRPGroupByProcessGuidAndIndex(evacuatingLRPKey.GetProcessGuid(), int(evacuatingLRPKey.GetIndex())) Expect(err).NotTo(HaveOccurred()) expectedResponses = append(expectedResponses, serialization.ActualLRPProtoToResponse(*evacuatingLRPGroup.GetEvacuating(), true)) Expect(actualLRPResponses).To(ConsistOf(expectedResponses)) }) }) Describe("ActualLRPsByProcessGuid", func() { var actualLRPResponses []receptor.ActualLRPResponse var getErr error JustBeforeEach(func() { actualLRPResponses, getErr = client.ActualLRPsByProcessGuid("process-guid-0") })