Beispiel #1
0
			Context("checking MinCliVersion", func() {
				It("it calls rpc cmd 'IsMinCliVersion' if plugin metadata 'MinCliVersion' is set", func() {
					args := []string{ts.Port(), "0"}
					session, err := Start(exec.Command(validPluginPath, args...), GinkgoWriter, GinkgoWriter)
					Expect(err).ToNot(HaveOccurred())

					session.Wait()

					Expect(rpcHandlers.IsMinCliVersionCallCount()).To(Equal(1))
				})

				Context("when the min cli version is not met", func() {
					BeforeEach(func() {
						rpcHandlers.IsMinCliVersionStub = func(_ string, result *bool) error {
							*result = false
							return nil
						}
					})

					It("notifies the user", func() {

						args := []string{ts.Port(), "0"}
						session, err := Start(exec.Command(validPluginPath, args...), GinkgoWriter, GinkgoWriter)
						Expect(err).ToNot(HaveOccurred())

						session.Wait()

						Expect(session).To(gbytes.Say("Minimum CLI version 5.0.0 is required to run this plugin command"))

					})
				})