github.com/stripe/stripe-go/v76@v76.25.0/usagerecord_test.go (about)

     1  package stripe
     2  
     3  import (
     4  	"strconv"
     5  	"testing"
     6  
     7  	assert "github.com/stretchr/testify/require"
     8  	"github.com/stripe/stripe-go/v76/form"
     9  )
    10  
    11  func TestUsageRecordParams_AppendTo(t *testing.T) {
    12  	testCases := []struct {
    13  		field  string
    14  		params *UsageRecordParams
    15  		want   interface{}
    16  	}{
    17  		{"action", &UsageRecordParams{Action: String("increment")}, "increment"},
    18  		{"quantity", &UsageRecordParams{Quantity: Int64(2000)}, strconv.FormatUint(2000, 10)},
    19  		{"quantity", &UsageRecordParams{Quantity: Int64(0)}, strconv.FormatUint(0, 10)},
    20  		{"timestamp", &UsageRecordParams{Timestamp: Int64(123123123)}, strconv.FormatUint(123123123, 10)},
    21  	}
    22  	for _, tc := range testCases {
    23  		t.Run(tc.field, func(t *testing.T) {
    24  			body := &form.Values{}
    25  			form.AppendTo(body, tc.params)
    26  			values := body.ToValues()
    27  			assert.Equal(t, tc.want, values.Get(tc.field))
    28  		})
    29  	}
    30  }