github.com/hdt3213/godis@v1.2.9/cluster/mset_test.go (about)

     1  package cluster
     2  
     3  import (
     4  	"github.com/hdt3213/godis/redis/connection"
     5  	"github.com/hdt3213/godis/redis/protocol/asserts"
     6  	"testing"
     7  )
     8  
     9  func TestMSet(t *testing.T) {
    10  	conn := connection.NewFakeConn()
    11  	allowFastTransaction = false
    12  	ret := MSet(testNodeA, conn, toArgs("MSET", "a", "a", "b", "b"))
    13  	asserts.AssertNotError(t, ret)
    14  	ret = testNodeA.Exec(conn, toArgs("MGET", "a", "b"))
    15  	asserts.AssertMultiBulkReply(t, ret, []string{"a", "b"})
    16  }
    17  
    18  func TestMSetNx(t *testing.T) {
    19  	conn := connection.NewFakeConn()
    20  	allowFastTransaction = false
    21  	FlushAll(testNodeA, conn, toArgs("FLUSHALL"))
    22  	ret := MSetNX(testNodeA, conn, toArgs("MSETNX", "a", "a", "b", "b"))
    23  	asserts.AssertNotError(t, ret)
    24  	ret = MSetNX(testNodeA, conn, toArgs("MSETNX", "a", "a", "c", "c"))
    25  	asserts.AssertNotError(t, ret)
    26  	ret = testNodeA.Exec(conn, toArgs("MGET", "a", "b", "c"))
    27  	asserts.AssertMultiBulkReply(t, ret, []string{"a", "b", ""})
    28  }