36 lines
896 B
Go
36 lines
896 B
Go
package repository
|
|
|
|
import (
|
|
"testing"
|
|
"time"
|
|
|
|
"github.com/Wei-Shaw/sub2api/internal/config"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestBuildRedisOptions(t *testing.T) {
|
|
cfg := &config.Config{
|
|
Redis: config.RedisConfig{
|
|
Host: "localhost",
|
|
Port: 6379,
|
|
Password: "secret",
|
|
DB: 2,
|
|
DialTimeoutSeconds: 5,
|
|
ReadTimeoutSeconds: 3,
|
|
WriteTimeoutSeconds: 4,
|
|
PoolSize: 100,
|
|
MinIdleConns: 10,
|
|
},
|
|
}
|
|
|
|
opts := buildRedisOptions(cfg)
|
|
require.Equal(t, "localhost:6379", opts.Addr)
|
|
require.Equal(t, "secret", opts.Password)
|
|
require.Equal(t, 2, opts.DB)
|
|
require.Equal(t, 5*time.Second, opts.DialTimeout)
|
|
require.Equal(t, 3*time.Second, opts.ReadTimeout)
|
|
require.Equal(t, 4*time.Second, opts.WriteTimeout)
|
|
require.Equal(t, 100, opts.PoolSize)
|
|
require.Equal(t, 10, opts.MinIdleConns)
|
|
}
|