github.com/pf-qiu/concourse/v6@v6.7.3-0.20201207032516-1f455d73275f/fly/integration/curl_test.go (about)

     1  package integration_test
     2  
     3  import (
     4  	"os/exec"
     5  
     6  	. "github.com/onsi/ginkgo"
     7  	. "github.com/onsi/gomega"
     8  	"github.com/onsi/gomega/gexec"
     9  )
    10  
    11  var _ = Describe("Fly CLI", func() {
    12  	Describe("curl", func() {
    13  		var (
    14  			flyCmd *exec.Cmd
    15  		)
    16  
    17  		Context("when providing query params with path", func() {
    18  			It("parse the query params correctly", func() {
    19  				flyCmd = exec.Command(flyPath, "-t", targetName, "curl", "--print-and-exit", "some-path?some-query-param=value")
    20  
    21  				sess, err := gexec.Start(flyCmd, GinkgoWriter, GinkgoWriter)
    22  				Expect(err).NotTo(HaveOccurred())
    23  
    24  				<-sess.Exited
    25  				Expect(sess.ExitCode()).To(Equal(0))
    26  
    27  				Expect(string(sess.Out.Contents())).To(ContainSubstring("some-path?some-query-param=value"))
    28  			})
    29  		})
    30  
    31  		Context("when providing curl command flags", func() {
    32  			It("append flags to curl command correctly", func() {
    33  				flyCmd = exec.Command(flyPath, "-t", targetName, "curl", "--print-and-exit", "some-path", "--", "-X", "PUT")
    34  
    35  				sess, err := gexec.Start(flyCmd, GinkgoWriter, GinkgoWriter)
    36  				Expect(err).NotTo(HaveOccurred())
    37  
    38  				<-sess.Exited
    39  				Expect(sess.ExitCode()).To(Equal(0))
    40  
    41  				Expect(string(sess.Out.Contents())).To(ContainSubstring("-X PUT"))
    42  			})
    43  		})
    44  	})
    45  })