var ( validPluginPath = filepath.Join("..", "fixtures", "plugins", "test_1.exe") ) Describe(".Start", func() { It("Exits with status 1 if it cannot ping the host port passed as an argument", func() { args := []string{"0", "0"} session, err := Start(exec.Command(validPluginPath, args...), GinkgoWriter, GinkgoWriter) Expect(err).ToNot(HaveOccurred()) Eventually(session, 2).Should(Exit(1)) }) Context("Executing plugins with '.Start()'", func() { var ( rpcHandlers *rpcserverfakes.FakeHandlers ts *rpcserver.TestServer err error ) BeforeEach(func() { rpcHandlers = new(rpcserverfakes.FakeHandlers) ts, err = rpcserver.NewTestRPCServer(rpcHandlers) Expect(err).NotTo(HaveOccurred()) }) JustBeforeEach(func() { err = ts.Start() Expect(err).NotTo(HaveOccurred()) }) AfterEach(func() {
"github.com/cloudfoundry/cli/testhelpers/rpcserver" "github.com/cloudfoundry/cli/testhelpers/rpcserver/rpcserverfakes" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" "github.com/onsi/gomega/gbytes" "github.com/onsi/gomega/gexec" ) const validPluginPath = "./test_rpc_server_example.exe" var _ = Describe("App-Lister", func() { var ( rpcHandlers *rpcserverfakes.FakeHandlers ts *rpcserver.TestServer err error ) BeforeEach(func() { rpcHandlers = new(rpcserverfakes.FakeHandlers) ts, err = rpcserver.NewTestRPCServer(rpcHandlers) Expect(err).NotTo(HaveOccurred()) //set rpc.CallCoreCommand to a successful call //rpc.CallCoreCommand is used in both cliConnection.CliCommand() and //cliConnection.CliWithoutTerminalOutput() rpcHandlers.CallCoreCommandStub = func(_ []string, retVal *bool) error { *retVal = true return nil }