package retry_test import ( "fmt" "testing" "github.com/stretchr/testify/require" "github.com/pomerium/pomerium/internal/retry" ) type testError string func (e testError) Error() string { return string(e) } func (e testError) IsTerminal() {} func TestError(t *testing.T) { t.Run("local terminal error", func(t *testing.T) { err := fmt.Errorf("wrap: %w", retry.NewTerminalError(fmt.Errorf("inner"))) require.True(t, retry.IsTerminalError(err)) }) t.Run("external terminal error", func(t *testing.T) { err := fmt.Errorf("wrap: %w", testError("inner")) require.True(t, retry.IsTerminalError(err)) }) }