package agentclient_test import ( "errors" . "github.com/cloudfoundry/bosh-agent/agentclient" fakeagentclient "github.com/cloudfoundry/bosh-agent/agentclient/fakes" boshretry "github.com/cloudfoundry/bosh-utils/retrystrategy" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" ) var _ = Describe("GetStateRetryable", func() { Describe("Attempt", func() { var ( fakeAgentClient *fakeagentclient.FakeAgentClient getStateRetryable boshretry.Retryable ) BeforeEach(func() { fakeAgentClient = fakeagentclient.NewFakeAgentClient() getStateRetryable = NewGetStateRetryable(fakeAgentClient) }) Context("when get_state fails", func() { BeforeEach(func() { fakeAgentClient.SetGetStateBehavior(AgentState{}, errors.New("fake-get-state-error")) }) It("returns an error", func() { isRetryable, err := getStateRetryable.Attempt() Expect(err).To(HaveOccurred())
package agentclient_test import ( "errors" . "github.com/cloudfoundry/bosh-agent/agentclient" fakeagentclient "github.com/cloudfoundry/bosh-agent/agentclient/fakes" boshretry "github.com/cloudfoundry/bosh-utils/retrystrategy" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" ) var _ = Describe("PingRetryable", func() { Describe("Attempt", func() { var ( fakeAgentClient *fakeagentclient.FakeAgentClient pingRetryable boshretry.Retryable ) BeforeEach(func() { fakeAgentClient = &fakeagentclient.FakeAgentClient{} pingRetryable = NewPingRetryable(fakeAgentClient) }) It("tells the agent client to ping", func() { isRetryable, err := pingRetryable.Attempt() Expect(err).ToNot(HaveOccurred()) Expect(isRetryable).To(BeTrue()) Expect(fakeAgentClient.PingCallCount()).To(Equal(1)) }) Context("when pinging fails", func() {
package agentclient_test import ( "errors" . "github.com/cloudfoundry/bosh-agent/agentclient" fakeagentclient "github.com/cloudfoundry/bosh-agent/agentclient/fakes" boshretry "github.com/cloudfoundry/bosh-utils/retrystrategy" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" ) var _ = Describe("GetStateRetryable", func() { Describe("Attempt", func() { var ( fakeAgentClient *fakeagentclient.FakeAgentClient getStateRetryable boshretry.Retryable ) BeforeEach(func() { fakeAgentClient = &fakeagentclient.FakeAgentClient{} getStateRetryable = NewGetStateRetryable(fakeAgentClient) }) Context("when get_state fails", func() { BeforeEach(func() { fakeAgentClient.GetStateReturns(AgentState{}, errors.New("fake-get-state-error")) }) It("returns an error", func() { isRetryable, err := getStateRetryable.Attempt() Expect(err).To(HaveOccurred())
package agentclient_test import ( "errors" . "github.com/cloudfoundry/bosh-agent/agentclient" fakeagentclient "github.com/cloudfoundry/bosh-agent/agentclient/fakes" boshretry "github.com/cloudfoundry/bosh-utils/retrystrategy" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" ) var _ = Describe("PingRetryable", func() { Describe("Attempt", func() { var ( fakeAgentClient *fakeagentclient.FakeAgentClient pingRetryable boshretry.Retryable ) BeforeEach(func() { fakeAgentClient = fakeagentclient.NewFakeAgentClient() pingRetryable = NewPingRetryable(fakeAgentClient) }) It("tells the agent client to ping", func() { isRetryable, err := pingRetryable.Attempt() Expect(err).ToNot(HaveOccurred()) Expect(isRetryable).To(BeTrue()) Expect(fakeAgentClient.PingCalledCount).To(Equal(1)) }) Context("when pinging fails", func() {
fakebiagentclient "github.com/cloudfoundry/bosh-agent/agentclient/fakes" fakebicloud "github.com/cloudfoundry/bosh-init/cloud/fakes" fakebiconfig "github.com/cloudfoundry/bosh-init/config/fakes" fakebidisk "github.com/cloudfoundry/bosh-init/deployment/disk/fakes" fakebivm "github.com/cloudfoundry/bosh-init/deployment/vm/fakes" fakebiui "github.com/cloudfoundry/bosh-init/ui/fakes" ) var _ = Describe("VM", func() { var ( vm VM fakeVMRepo *fakebiconfig.FakeVMRepo fakeStemcellRepo *fakebiconfig.FakeStemcellRepo fakeDiskDeployer *fakebivm.FakeDiskDeployer fakeAgentClient *fakebiagentclient.FakeAgentClient fakeCloud *fakebicloud.FakeCloud applySpec bias.ApplySpec diskPool bideplmanifest.DiskPool fs *fakesys.FakeFileSystem logger boshlog.Logger ) BeforeEach(func() { fakeAgentClient = &fakebiagentclient.FakeAgentClient{} // apply spec is only being passed to the agent client, so it doesn't need much content for testing applySpec = bias.ApplySpec{ Deployment: "fake-deployment-name", } diskPool = bideplmanifest.DiskPool{