45 lines
916 B
Go
45 lines
916 B
Go
// Copyright (c) HashiCorp, Inc.
|
|
// SPDX-License-Identifier: MPL-2.0
|
|
|
|
package api
|
|
|
|
import (
|
|
"strings"
|
|
"testing"
|
|
)
|
|
|
|
func TestRequestSetJSONBody(t *testing.T) {
|
|
var r Request
|
|
raw := map[string]interface{}{"foo": "bar"}
|
|
if err := r.SetJSONBody(raw); err != nil {
|
|
t.Fatalf("err: %s", err)
|
|
}
|
|
|
|
expected := `{"foo":"bar"}`
|
|
actual := strings.TrimSpace(string(r.BodyBytes))
|
|
if actual != expected {
|
|
t.Fatalf("bad: %s", actual)
|
|
}
|
|
}
|
|
|
|
func TestRequestResetJSONBody(t *testing.T) {
|
|
var r Request
|
|
raw := map[string]interface{}{"foo": "bar"}
|
|
if err := r.SetJSONBody(raw); err != nil {
|
|
t.Fatalf("err: %s", err)
|
|
}
|
|
|
|
if err := r.ResetJSONBody(); err != nil {
|
|
t.Fatalf("err: %s", err)
|
|
}
|
|
|
|
buf := make([]byte, len(r.BodyBytes))
|
|
copy(buf, r.BodyBytes)
|
|
|
|
expected := `{"foo":"bar"}`
|
|
actual := strings.TrimSpace(string(buf))
|
|
if actual != expected {
|
|
t.Fatalf("bad: actual %s, expected %s", actual, expected)
|
|
}
|
|
}
|