vault/sdk/physical/encoding_test.go
Paul Banks 2d88a454d9
Add support for larger transactions in Raft (#24991)
* Add support for larger transactions in Raft

* Add CHANGELOG

* Appease the new lint rules
2024-01-24 14:38:39 +00:00

52 lines
1.0 KiB
Go

// Copyright (c) HashiCorp, Inc.
// SPDX-License-Identifier: MPL-2.0
package physical
import (
"testing"
"github.com/stretchr/testify/require"
)
func TestTransactionalStorageEncoding_TransactionLimits(t *testing.T) {
tc := []struct {
name string
be Backend
wantEntries int
wantSize int
}{
{
name: "non-transactionlimits backend",
be: &TestTransactionalNonLimitBackend{},
// Should return zeros to let the implementor choose defaults.
wantEntries: 0,
wantSize: 0,
},
{
name: "transactionlimits backend",
be: &TestTransactionalLimitBackend{
MaxEntries: 123,
MaxSize: 345,
},
// Should return underlying limits
wantEntries: 123,
wantSize: 345,
},
}
for _, tt := range tc {
t.Run(tt.name, func(t *testing.T) {
be := NewStorageEncoding(tt.be).(TransactionalLimits)
// Call the TransactionLimits method
maxEntries, maxBytes := be.TransactionLimits()
require.Equal(t, tt.wantEntries, maxEntries)
require.Equal(t, tt.wantSize, maxBytes)
})
}
}