2014-09-02 13:55:12 +04:00
|
|
|
package ledis
|
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// import (
|
|
|
|
// "sync"
|
|
|
|
// "testing"
|
|
|
|
// )
|
2014-09-02 13:55:12 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// func TestMulti(t *testing.T) {
|
|
|
|
// db := getTestDB()
|
2014-09-02 13:55:12 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// key := []byte("test_multi_1")
|
|
|
|
// v1 := []byte("v1")
|
|
|
|
// v2 := []byte("v2")
|
2014-09-02 13:55:12 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// m, err := db.Multi()
|
|
|
|
// if err != nil {
|
|
|
|
// t.Fatal(err)
|
|
|
|
// }
|
2014-09-02 13:55:12 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// wg := sync.WaitGroup{}
|
2014-09-02 13:55:12 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// wg.Add(1)
|
2014-09-02 13:55:12 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// go func() {
|
|
|
|
// if err := db.Set(key, v2); err != nil {
|
|
|
|
// t.Fatal(err)
|
|
|
|
// }
|
|
|
|
// wg.Done()
|
|
|
|
// }()
|
2014-09-02 13:55:12 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// if err := m.Set(key, v1); err != nil {
|
|
|
|
// t.Fatal(err)
|
|
|
|
// }
|
2014-09-02 13:55:12 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// if v, err := m.Get(key); err != nil {
|
|
|
|
// t.Fatal(err)
|
|
|
|
// } else if string(v) != string(v1) {
|
|
|
|
// t.Fatal(string(v))
|
|
|
|
// }
|
2014-09-02 13:55:12 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// m.Close()
|
2014-09-02 13:55:12 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// wg.Wait()
|
2014-09-02 13:55:12 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// if v, err := db.Get(key); err != nil {
|
|
|
|
// t.Fatal(err)
|
|
|
|
// } else if string(v) != string(v2) {
|
|
|
|
// t.Fatal(string(v))
|
|
|
|
// }
|
2014-09-02 13:55:12 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// }
|