vault: testing new system endpoints

This commit is contained in:
Armon Dadgar
2015-03-11 18:34:33 -07:00
parent ada83992b1
commit 49ec653589

View File

@@ -49,3 +49,89 @@ func TestSystem_mounts(t *testing.T) {
t.Fatalf("got: %#v", resp.Data)
}
}
func TestSystem_mount_help(t *testing.T) {
s := testSystem(t)
req := &Request{
Operation: HelpOperation,
Path: "mount/prod/secret/",
}
resp, err := s.HandleRequest(req)
if err != nil {
t.Fatalf("err: %v", err)
}
if resp.Data["help"] != "used to mount or unmount a path" {
t.Fatalf("got: %#v", resp.Data)
}
}
func TestSystem_mount(t *testing.T) {
s := testSystem(t)
req := &Request{
Operation: WriteOperation,
Path: "mount/prod/secret/",
Data: map[string]interface{}{
"type": "generic",
},
}
resp, err := s.HandleRequest(req)
if err != nil {
t.Fatalf("err: %v", err)
}
if resp != nil {
t.Fatalf("bad: %v", resp)
}
}
func TestSystem_mount_invalid(t *testing.T) {
s := testSystem(t)
req := &Request{
Operation: WriteOperation,
Path: "mount/prod/secret/",
Data: map[string]interface{}{
"type": "what",
},
}
resp, err := s.HandleRequest(req)
if err != ErrInvalidRequest {
t.Fatalf("err: %v", err)
}
if resp.Data["error"] != "unknown logical backend type: what" {
t.Fatalf("bad: %v", resp)
}
}
func TestSystem_unmount(t *testing.T) {
s := testSystem(t)
req := &Request{
Operation: DeleteOperation,
Path: "mount/secret/",
}
resp, err := s.HandleRequest(req)
if err != nil {
t.Fatalf("err: %v", err)
}
if resp != nil {
t.Fatalf("bad: %v", resp)
}
}
func TestSystem_unmount_invalid(t *testing.T) {
s := testSystem(t)
req := &Request{
Operation: DeleteOperation,
Path: "mount/foo/",
}
resp, err := s.HandleRequest(req)
if err != ErrInvalidRequest {
t.Fatalf("err: %v", err)
}
if resp.Data["error"] != "no matching mount" {
t.Fatalf("bad: %v", resp)
}
}