26 lines
761 B
Go
26 lines
761 B
Go
//go:build unit
|
|||
|
|
|
||
|
|
package service
|
||
|
|
|
||
|
|
import (
|
||
|
|
"testing"
|
||
|
|
"time"
|
||
|
|
|
||
|
|
"github.com/stretchr/testify/require"
|
||
|
|
)
|
||
|
|
|
||
|
|
func TestResolveGrokStreamIdleTimeout(t *testing.T) {
|
||
|
|
require.Equal(t, 90*time.Second, resolveGrokStreamIdleTimeout(90))
|
||
|
|
require.Equal(t, defaultGrokStreamIdleTimeout, resolveGrokStreamIdleTimeout(0))
|
||
|
|
require.Equal(t, defaultGrokStreamIdleTimeout, resolveGrokStreamIdleTimeout(-1))
|
||
|
|
}
|
||
|
|
|
||
|
|
func TestGrokStreamIdleFailoverError(t *testing.T) {
|
||
|
|
account := &Account{ID: 1, Platform: PlatformGrok, Type: AccountTypeOAuth}
|
||
|
|
err := grokStreamIdleFailoverError(account, 180*time.Second)
|
||
|
|
require.NotNil(t, err)
|
||
|
|
require.Equal(t, 502, err.StatusCode)
|
||
|
|
require.True(t, err.SafeToFailoverAfterWrite)
|
||
|
|
require.Contains(t, string(err.ResponseBody), "empty_upstream")
|
||
|
|
}
|