etcd_test.go 919 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. package etcd
  2. import (
  3. "testing"
  4. "time"
  5. )
  6. func TestEtcdClient(t *testing.T) {
  7. clt, err := New([]string{"192.168.88.164:2379"}, "", "", 3*time.Second)
  8. if err != nil {
  9. t.Fatal(err)
  10. }
  11. defer clt.Close()
  12. // kv
  13. //err = clt.Del("foo")
  14. //if err != nil {
  15. // t.Fatal(err)
  16. //}
  17. //err = clt.Put("foo", "bar")
  18. //if err != nil {
  19. // t.Fatal("put")
  20. //}
  21. v, err := clt.Get("foo")
  22. if err != nil {
  23. t.Fatal(err)
  24. }
  25. if string(v) != "bar" {
  26. t.Fatal("not equal", v)
  27. }
  28. //lease
  29. leaseId, err := clt.PutWithLife("foo1", "death", 10)
  30. t.Log(leaseId)
  31. time.Sleep(11 * time.Second)
  32. v, err = clt.Get("foo1")
  33. if len(v) > 0 {
  34. t.Fatal("lease error")
  35. }
  36. leaseId, err = clt.PutWithLife("foo1", "art", 10)
  37. err = clt.KeepAlive(leaseId)
  38. if err != nil {
  39. t.Fatal(err)
  40. }
  41. //t.Log("foo:", v)
  42. ///watch
  43. //ch := clt.Watch("foo1")
  44. //for item := range ch {
  45. // for _, ev := range item.Events {
  46. // fmt.Println(ev)
  47. // }
  48. //}
  49. }