add test

This commit is contained in:
Wei Lun
2020-11-03 18:14:11 +08:00
parent 67e2cf0978
commit 8517c90193

View File

@@ -1,14 +1,12 @@
// +build mongodb
package mongodb package mongodb
import ( import (
"context" "context"
"os"
"testing"
"github.com/gofiber/utils" "github.com/gofiber/utils"
"go.mongodb.org/mongo-driver/bson" "go.mongodb.org/mongo-driver/bson"
"os"
"testing"
"time"
) )
const ( const (
@@ -74,7 +72,31 @@ func Test_MongoDB_Get_Invalid(t *testing.T) {
utils.AssertEqual(t, true, getVal == nil, "get nil if key not found") utils.AssertEqual(t, true, getVal == nil, "get nil if key not found")
} }
func Test_MongoDB_Delete(t *testing.T) { func Test_MongoDB_Set_Replace(t *testing.T) {
if uri == "" {
t.Skip()
}
store := New(getConfig())
defer func() {
_ = store.db.Client().Disconnect(context.TODO())
}()
key := "replace_key"
value1 := []byte("value1")
value2 := []byte("value2")
setErr1 := store.Set(key, value1, 0)
setErr2 := store.Set(key, value2, 0)
val, getErr := store.Get(key)
utils.AssertEqual(t, true, setErr1 == nil)
utils.AssertEqual(t, true, setErr2 == nil)
utils.AssertEqual(t, true, getErr == nil)
utils.AssertEqual(t, value2, val, "replace value if key exists")
}
func Test_MongoDB_SetExpiry(t *testing.T) {
if uri == "" { if uri == "" {
t.Skip() t.Skip()
} }
@@ -86,6 +108,26 @@ func Test_MongoDB_Delete(t *testing.T) {
key := "example_key_2" key := "example_key_2"
value := []byte("123") value := []byte("123")
setErr := store.Set(key, value, 1*time.Nanosecond)
utils.AssertEqual(t, true, setErr == nil)
val, getErr := store.Get(key)
utils.AssertEqual(t, true, getErr == nil)
utils.AssertEqual(t, true, val == nil, "get nil if key is expire")
}
func Test_MongoDB_Delete(t *testing.T) {
if uri == "" {
t.Skip()
}
store := New(getConfig())
defer func() {
_ = store.db.Client().Disconnect(context.TODO())
}()
key := "example_key_3"
value := []byte("123")
err := store.Set(key, value, 0) err := store.Set(key, value, 0)
utils.AssertEqual(t, nil, err) utils.AssertEqual(t, nil, err)
@@ -106,7 +148,7 @@ func Test_MongoDB_Clear(t *testing.T) {
_ = store.db.Client().Disconnect(context.TODO()) _ = store.db.Client().Disconnect(context.TODO())
}() }()
key := "example_key_2" key := "example_key_4"
value := []byte("123") value := []byte("123")
err := store.Set(key, value, 10) err := store.Set(key, value, 10)