github.com/mboersma/deis@v1.13.4/tests/releases_test.go (about) 1 // +build integration 2 3 package tests 4 5 import ( 6 "testing" 7 8 "github.com/deis/deis/tests/utils" 9 ) 10 11 var ( 12 releasesListCmd = "releases:list --app={{.AppName}}" 13 releasesInfoCmd = "releases:info {{.Version}} --app={{.AppName}}" 14 releasesRollbackCmd = "releases:rollback {{.Version}} --app={{.AppName}}" 15 ) 16 17 func TestReleases(t *testing.T) { 18 params := releasesSetup(t) 19 releasesListTest(t, params, false) 20 releasesInfoTest(t, params) 21 releasesRollbackTest(t, params) 22 appsOpenTest(t, params) 23 params.Version = "4" 24 releasesListTest(t, params, false) 25 utils.AppsDestroyTest(t, params) 26 27 } 28 29 func releasesSetup(t *testing.T) *utils.DeisTestConfig { 30 cfg := utils.GetGlobalConfig() 31 cfg.AppName = "releasessample" 32 utils.Execute(t, authLoginCmd, cfg, false, "") 33 utils.Execute(t, gitCloneCmd, cfg, false, "") 34 if err := utils.Chdir(cfg.ExampleApp); err != nil { 35 t.Fatal(err) 36 } 37 utils.Execute(t, appsCreateCmd, cfg, false, "") 38 utils.Execute(t, gitPushCmd, cfg, false, "") 39 if err := utils.Chdir(".."); err != nil { 40 t.Fatal(err) 41 } 42 utils.Execute(t, configSetCmd, cfg, false, "") 43 return cfg 44 } 45 46 func releasesInfoTest(t *testing.T, params *utils.DeisTestConfig) { 47 utils.Execute(t, releasesInfoCmd, params, false, "") 48 } 49 50 func releasesListTest( 51 t *testing.T, params *utils.DeisTestConfig, notflag bool) { 52 utils.CheckList(t, releasesListCmd, params, params.Version, notflag) 53 } 54 55 func releasesRollbackTest(t *testing.T, params *utils.DeisTestConfig) { 56 utils.Execute(t, releasesRollbackCmd, params, false, "") 57 }