github.com/ahjdzx/deis@v1.1.1/tests/keys_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 keysAddCmd = "keys:add ~/.ssh/{{.AuthKey}}.pub || true" 13 keysListCmd = "keys:list" 14 keysRemoveCmd = "keys:remove {{.AuthKey}} || true" 15 ) 16 17 func TestKeys(t *testing.T) { 18 params := keysSetup(t) 19 keysAddTest(t, params) 20 keysListTest(t, params, false) 21 keysRemoveTest(t, params) 22 keysListTest(t, params, true) 23 } 24 25 // Requires a ~/.ssh/deis-testkey to be set up: 26 // $ ssh-keygen -q -t rsa -f ~/.ssh/deiskey -N '' -C deiskey 27 func keysSetup(t *testing.T) *utils.DeisTestConfig { 28 cfg := utils.GetGlobalConfig() 29 utils.Execute(t, authLoginCmd, cfg, false, "") 30 return cfg 31 } 32 33 func keysAddTest(t *testing.T, params *utils.DeisTestConfig) { 34 params.AuthKey = "deiskey" 35 utils.Execute(t, keysAddCmd, params, false, "") 36 utils.Execute(t, keysAddCmd, params, true, 37 "SSH Key with this Public already exists") 38 } 39 40 func keysListTest(t *testing.T, params *utils.DeisTestConfig, notflag bool) { 41 utils.CheckList(t, keysListCmd, params, params.AuthKey, notflag) 42 } 43 44 func keysRemoveTest(t *testing.T, params *utils.DeisTestConfig) { 45 utils.Execute(t, keysRemoveCmd, params, false, "") 46 }