github.com/ablease/cli@v6.37.1-0.20180613014814-3adbb7d7fb19+incompatible/integration/push/app_flags_test.go (about)

     1  package push
     2  
     3  import (
     4  	"fmt"
     5  	"regexp"
     6  
     7  	"code.cloudfoundry.org/cli/integration/helpers"
     8  
     9  	. "github.com/onsi/ginkgo"
    10  	. "github.com/onsi/gomega"
    11  	. "github.com/onsi/gomega/gbytes"
    12  	. "github.com/onsi/gomega/gexec"
    13  )
    14  
    15  var _ = Describe("push with various flags and no manifest", func() {
    16  	var (
    17  		appName string
    18  	)
    19  
    20  	BeforeEach(func() {
    21  		appName = helpers.NewAppName()
    22  	})
    23  
    24  	It("creates the app with the specified settings, with the health check type not being 'http'", func() {
    25  		helpers.WithHelloWorldApp(func(dir string) {
    26  			session := helpers.CustomCF(helpers.CFEnv{WorkingDirectory: dir},
    27  				PushCommandName, appName,
    28  				"-b", "staticfile_buildpack",
    29  				"-c", fmt.Sprintf("echo 'hi' && %s", helpers.StaticfileBuildpackStartCommand),
    30  				"-u", "port", //works if this stuff is commentted out
    31  				"-k", "300M",
    32  				"-i", "2",
    33  				"-m", "70M",
    34  				"-s", "cflinuxfs2",
    35  				"-t", "180",
    36  			)
    37  			Eventually(session).Should(Say("Getting app info\\.\\.\\."))
    38  			Eventually(session).Should(Say("Creating app with these attributes\\.\\.\\."))
    39  			Eventually(session).Should(Say("\\+\\s+name:\\s+%s", appName))
    40  			Eventually(session).Should(Say("\\s+buildpack:\\s+staticfile_buildpack"))
    41  			Eventually(session).Should(Say("\\s+command:\\s+echo 'hi' && %s", regexp.QuoteMeta(helpers.StaticfileBuildpackStartCommand)))
    42  			Eventually(session).Should(Say("\\s+disk quota:\\s+300M"))
    43  			Eventually(session).Should(Say("\\s+health check timeout:\\s+180"))
    44  			Eventually(session).Should(Say("\\s+health check type:\\s+port"))
    45  			Eventually(session).Should(Say("\\s+instances:\\s+2"))
    46  			Eventually(session).Should(Say("\\s+memory:\\s+70M"))
    47  			Eventually(session).Should(Say("\\s+stack:\\s+cflinuxfs2"))
    48  			Eventually(session).Should(Say("\\s+routes:"))
    49  			Eventually(session).Should(Say("(?i)\\+\\s+%s.%s", appName, helpers.DefaultSharedDomain()))
    50  			Eventually(session).Should(Say("Mapping routes\\.\\.\\."))
    51  			Eventually(session).Should(Say("Uploading files\\.\\.\\."))
    52  			Eventually(session).Should(Say("100.00%"))
    53  			Eventually(session).Should(Say("Waiting for API to complete processing files\\.\\.\\."))
    54  			helpers.ConfirmStagingLogs(session)
    55  			Eventually(session).Should(Say("Waiting for app to start\\.\\.\\."))
    56  			Eventually(session).Should(Say("requested state:\\s+started"))
    57  			Eventually(session).Should(Say("start command:\\s+echo 'hi' && %s", regexp.QuoteMeta(helpers.StaticfileBuildpackStartCommand)))
    58  			Eventually(session).Should(Exit(0))
    59  		})
    60  
    61  		session := helpers.CF("app", appName)
    62  		Eventually(session).Should(Say("name:\\s+%s", appName))
    63  		Eventually(session).Should(Say("instances:\\s+\\d/2"))
    64  		Eventually(session).Should(Say("usage:\\s+70M x 2"))
    65  		Eventually(session).Should(Say("stack:\\s+cflinuxfs2"))
    66  		Eventually(session).Should(Say("buildpack:\\s+staticfile_buildpack"))
    67  		Eventually(session).Should(Say("#0.* of 70M"))
    68  		Eventually(session).Should(Exit(0))
    69  	})
    70  
    71  	It("creates the app with the specified settings, with the health check type being 'http'", func() {
    72  		helpers.WithHelloWorldApp(func(dir string) {
    73  			session := helpers.CustomCF(helpers.CFEnv{WorkingDirectory: dir},
    74  				PushCommandName, appName,
    75  				"-b", "staticfile_buildpack",
    76  				"-c", fmt.Sprintf("echo 'hi' && %s", helpers.StaticfileBuildpackStartCommand),
    77  				"-u", "http",
    78  				"-k", "300M",
    79  				"-i", "2",
    80  				"-m", "70M",
    81  				"-s", "cflinuxfs2",
    82  				"-t", "180",
    83  			)
    84  			Eventually(session).Should(Say("Getting app info\\.\\.\\."))
    85  			Eventually(session).Should(Say("Creating app with these attributes\\.\\.\\."))
    86  			Eventually(session).Should(Say("\\+\\s+name:\\s+%s", appName))
    87  			Eventually(session).Should(Say("\\s+buildpack:\\s+staticfile_buildpack"))
    88  			Eventually(session).Should(Say("\\s+command:\\s+echo 'hi' && %s", regexp.QuoteMeta(helpers.StaticfileBuildpackStartCommand)))
    89  			Eventually(session).Should(Say("\\s+disk quota:\\s+300M"))
    90  			Eventually(session).Should(Say("\\s+health check http endpoint:\\s+/"))
    91  			Eventually(session).Should(Say("\\s+health check timeout:\\s+180"))
    92  			Eventually(session).Should(Say("\\s+health check type:\\s+http"))
    93  			Eventually(session).Should(Say("\\s+instances:\\s+2"))
    94  			Eventually(session).Should(Say("\\s+memory:\\s+70M"))
    95  			Eventually(session).Should(Say("\\s+stack:\\s+cflinuxfs2"))
    96  			Eventually(session).Should(Say("\\s+routes:"))
    97  			Eventually(session).Should(Say("(?i)\\+\\s+%s.%s", appName, helpers.DefaultSharedDomain()))
    98  			Eventually(session).Should(Say("Mapping routes\\.\\.\\."))
    99  			Eventually(session).Should(Say("Uploading files\\.\\.\\."))
   100  			Eventually(session).Should(Say("100.00%"))
   101  			Eventually(session).Should(Say("Waiting for API to complete processing files\\.\\.\\."))
   102  			helpers.ConfirmStagingLogs(session)
   103  			Eventually(session).Should(Say("Waiting for app to start\\.\\.\\."))
   104  			Eventually(session).Should(Say("requested state:\\s+started"))
   105  			Eventually(session).Should(Say("start command:\\s+echo 'hi' && %s", regexp.QuoteMeta(helpers.StaticfileBuildpackStartCommand)))
   106  			Eventually(session).Should(Exit(0))
   107  		})
   108  
   109  		session := helpers.CF("app", appName)
   110  		Eventually(session).Should(Say("name:\\s+%s", appName))
   111  		Eventually(session).Should(Say("instances:\\s+\\d/2"))
   112  		Eventually(session).Should(Say("usage:\\s+70M x 2"))
   113  		Eventually(session).Should(Say("stack:\\s+cflinuxfs2"))
   114  		Eventually(session).Should(Say("buildpack:\\s+staticfile_buildpack"))
   115  		Eventually(session).Should(Say("#0.* of 70M"))
   116  		Eventually(session).Should(Exit(0))
   117  	})
   118  })