vault/sdk/physical/latency_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

54 lines
1.1 KiB
Go

// Copyright (c) HashiCorp, Inc.
// SPDX-License-Identifier: MPL-2.0
package physical
import (
"testing"
"github.com/hashicorp/go-hclog"
"github.com/stretchr/testify/require"
)
func TestTransactionalLatencyInjector_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) {
logger := hclog.NewNullLogger()
injector := NewTransactionalLatencyInjector(tt.be, 0, 0, logger)
maxEntries, maxBytes := injector.TransactionLimits()
require.Equal(t, tt.wantEntries, maxEntries)
require.Equal(t, tt.wantSize, maxBytes)
})
}
}