| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- //go:build unit
- package service
- import (
- "testing"
- "github.com/stretchr/testify/require"
- )
- func intPtrHelper(v int) *int { return &v }
- func TestEffectiveLoadFactor_NilAccount(t *testing.T) {
- var a *Account
- require.Equal(t, 1, a.EffectiveLoadFactor())
- }
- func TestEffectiveLoadFactor_NilLoadFactor_PositiveConcurrency(t *testing.T) {
- a := &Account{Concurrency: 5}
- require.Equal(t, 5, a.EffectiveLoadFactor())
- }
- func TestEffectiveLoadFactor_NilLoadFactor_ZeroConcurrency(t *testing.T) {
- a := &Account{Concurrency: 0}
- require.Equal(t, 1, a.EffectiveLoadFactor())
- }
- func TestEffectiveLoadFactor_PositiveLoadFactor(t *testing.T) {
- a := &Account{Concurrency: 5, LoadFactor: intPtrHelper(20)}
- require.Equal(t, 20, a.EffectiveLoadFactor())
- }
- func TestEffectiveLoadFactor_ZeroLoadFactor_FallbackToConcurrency(t *testing.T) {
- a := &Account{Concurrency: 5, LoadFactor: intPtrHelper(0)}
- require.Equal(t, 5, a.EffectiveLoadFactor())
- }
- func TestEffectiveLoadFactor_NegativeLoadFactor_FallbackToConcurrency(t *testing.T) {
- a := &Account{Concurrency: 3, LoadFactor: intPtrHelper(-1)}
- require.Equal(t, 3, a.EffectiveLoadFactor())
- }
- func TestEffectiveLoadFactor_ZeroLoadFactor_ZeroConcurrency(t *testing.T) {
- a := &Account{Concurrency: 0, LoadFactor: intPtrHelper(0)}
- require.Equal(t, 1, a.EffectiveLoadFactor())
- }
|