Skip to content

Commit a6e9331

Browse files
Lairon Acosta GuardiasLairon Acosta Guardias
authored andcommitted
feat: adding unit testing for redis db client
1 parent f851ba2 commit a6e9331

File tree

1 file changed

+46
-0
lines changed

1 file changed

+46
-0
lines changed

redisdb/redis_db_test.go

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
package redisdb
2+
3+
import (
4+
"fmt"
5+
"github.com/go-redis/redis/v8"
6+
"github.com/stretchr/testify/assert"
7+
"testing"
8+
)
9+
10+
var redisOptions = &redis.Options{
11+
Addr: "localhost:6379",
12+
Password: "",
13+
DB: 0,
14+
}
15+
16+
func TestNewRedisDB_WhenOptionsOk_ThenCreateClient(t *testing.T) {
17+
got := NewRedisDB(redisOptions)
18+
got.Close()
19+
20+
assert.NotNil(t, got)
21+
assert.Equal(t, redisOptions.Addr, got.Options().Addr)
22+
assert.Equal(t, redisOptions.Password, got.Options().Password)
23+
assert.Equal(t, redisOptions.DB, got.Options().DB)
24+
}
25+
26+
func TestNewRedisDB_WhenOptionsNil_ThenPanic(t *testing.T) {
27+
defer func() {
28+
if r := recover(); r != nil {
29+
assert.Equal(t, fmt.Sprint("runtime error: invalid memory address or nil pointer dereference"), fmt.Sprint(r))
30+
}
31+
}()
32+
NewRedisDB(nil)
33+
}
34+
35+
func TestNewRedisDB_WhenOptionsContainBadAddr_ThenPanic(t *testing.T) {
36+
defer func() {
37+
if r := recover(); r != nil {
38+
assert.Equal(t, fmt.Sprintln("Redis connection error dial tcp: lookup awdawdaw: no such host"), fmt.Sprint(r))
39+
}
40+
}()
41+
NewRedisDB(&redis.Options{
42+
Addr: "bad:6379",
43+
Password: "",
44+
DB: 0,
45+
})
46+
}

0 commit comments

Comments
 (0)