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("checks whether the container exists", func() { Expect(containerDelegate.GetContainerCallCount()).To(Equal(1)) containerDelegateLogger, containerGuid := containerDelegate.GetContainerArgsForCall(0) Expect(containerGuid).To(Equal(expectedContainerGuid)) Expect(containerDelegateLogger.SessionName()).To(Equal(sessionName)) }) It("logs its execution lifecycle", func() { Expect(logger).To(Say(sessionName + ".starting")) Expect(logger).To(Say(sessionName + ".finished")) }) Context("when the container does not exist", func() { BeforeEach(func() { containerDelegate.GetContainerReturns(executor.Container{}, false) })