浏览代码

Merge pull request #4370 from gyuho/kv_lease

clientv3/integration: TestKVPut with lease id
Gyu-Ho Lee 10 年之前
父节点
当前提交
d4438fbb97
共有 1 个文件被更改,包括 15 次插入8 次删除
  1. 15 8
      clientv3/integration/kv_test.go

+ 15 - 8
clientv3/integration/kv_test.go

@@ -19,6 +19,7 @@ import (
 	"reflect"
 	"reflect"
 	"testing"
 	"testing"
 
 
+	"github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/context"
 	"github.com/coreos/etcd/clientv3"
 	"github.com/coreos/etcd/clientv3"
 	"github.com/coreos/etcd/integration"
 	"github.com/coreos/etcd/integration"
 	"github.com/coreos/etcd/lease"
 	"github.com/coreos/etcd/lease"
@@ -29,25 +30,31 @@ import (
 func TestKVPut(t *testing.T) {
 func TestKVPut(t *testing.T) {
 	defer testutil.AfterTest(t)
 	defer testutil.AfterTest(t)
 
 
+	clus := integration.NewClusterV3(t, &integration.ClusterConfig{Size: 3})
+	defer clus.Terminate(t)
+
+	lapi := clientv3.NewLease(clus.RandClient())
+	defer lapi.Close()
+
+	kv := clientv3.NewKV(clus.RandClient())
+
+	resp, err := lapi.Create(context.Background(), 10)
+	if err != nil {
+		t.Fatalf("failed to create lease %v", err)
+	}
+
 	tests := []struct {
 	tests := []struct {
 		key, val string
 		key, val string
 		leaseID  lease.LeaseID
 		leaseID  lease.LeaseID
 	}{
 	}{
 		{"foo", "bar", lease.NoLease},
 		{"foo", "bar", lease.NoLease},
-
-		// TODO: test with leaseID
+		{"hello", "world", lease.LeaseID(resp.ID)},
 	}
 	}
 
 
 	for i, tt := range tests {
 	for i, tt := range tests {
-		clus := integration.NewClusterV3(t, &integration.ClusterConfig{Size: 3})
-		defer clus.Terminate(t)
-
-		kv := clientv3.NewKV(clus.RandClient())
-
 		if _, err := kv.Put(tt.key, tt.val, tt.leaseID); err != nil {
 		if _, err := kv.Put(tt.key, tt.val, tt.leaseID); err != nil {
 			t.Fatalf("#%d: couldn't put %q (%v)", i, tt.key, err)
 			t.Fatalf("#%d: couldn't put %q (%v)", i, tt.key, err)
 		}
 		}
-
 		resp, err := kv.Get(tt.key, 0)
 		resp, err := kv.Get(tt.key, 0)
 		if err != nil {
 		if err != nil {
 			t.Fatalf("#%d: couldn't get key (%v)", i, err)
 			t.Fatalf("#%d: couldn't get key (%v)", i, err)