43 lines
1.3 KiB
Go
43 lines
1.3 KiB
Go
|
package pkiext
|
||
|
|
||
|
import (
|
||
|
"fmt"
|
||
|
"testing"
|
||
|
|
||
|
"github.com/hashicorp/vault/sdk/logical"
|
||
|
"github.com/stretchr/testify/require"
|
||
|
)
|
||
|
|
||
|
func requireFieldsSetInResp(t *testing.T, resp *logical.Response, fields ...string) {
|
||
|
var missingFields []string
|
||
|
for _, field := range fields {
|
||
|
value, ok := resp.Data[field]
|
||
|
if !ok || value == nil {
|
||
|
missingFields = append(missingFields, field)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
require.Empty(t, missingFields, "The following fields were required but missing from response:\n%v", resp.Data)
|
||
|
}
|
||
|
|
||
|
func requireSuccessNonNilResponse(t *testing.T, resp *logical.Response, err error, msgAndArgs ...interface{}) {
|
||
|
require.NoError(t, err, msgAndArgs...)
|
||
|
if resp.IsError() {
|
||
|
errContext := fmt.Sprintf("Expected successful response but got error: %v", resp.Error())
|
||
|
require.Falsef(t, resp.IsError(), errContext, msgAndArgs...)
|
||
|
}
|
||
|
require.NotNil(t, resp, msgAndArgs...)
|
||
|
}
|
||
|
|
||
|
func requireSuccessNilResponse(t *testing.T, resp *logical.Response, err error, msgAndArgs ...interface{}) {
|
||
|
require.NoError(t, err, msgAndArgs...)
|
||
|
if resp.IsError() {
|
||
|
errContext := fmt.Sprintf("Expected successful response but got error: %v", resp.Error())
|
||
|
require.Falsef(t, resp.IsError(), errContext, msgAndArgs...)
|
||
|
}
|
||
|
if resp != nil {
|
||
|
msg := fmt.Sprintf("expected nil response but got: %v", resp)
|
||
|
require.Nilf(t, resp, msg, msgAndArgs...)
|
||
|
}
|
||
|
}
|