github.com/gavinw2006/hashicorp-terraform@v0.11.12-beta1/communicator/ssh/password_test.go (about) 1 package ssh 2 3 import ( 4 "reflect" 5 "testing" 6 7 "golang.org/x/crypto/ssh" 8 ) 9 10 func TestPasswordKeyboardInteractive_Impl(t *testing.T) { 11 var raw interface{} 12 raw = PasswordKeyboardInteractive("foo") 13 if _, ok := raw.(ssh.KeyboardInteractiveChallenge); !ok { 14 t.Fatal("PasswordKeyboardInteractive must implement KeyboardInteractiveChallenge") 15 } 16 } 17 18 func TestPasswordKeybardInteractive_Challenge(t *testing.T) { 19 p := PasswordKeyboardInteractive("foo") 20 result, err := p("foo", "bar", []string{"one", "two"}, nil) 21 if err != nil { 22 t.Fatalf("err not nil: %s", err) 23 } 24 25 if !reflect.DeepEqual(result, []string{"foo", "foo"}) { 26 t.Fatalf("invalid password: %#v", result) 27 } 28 }