From f6b46fb0f21f724e0c7a4a076e3a51e1452f95be Mon Sep 17 00:00:00 2001 From: Cong Ding Date: Wed, 17 Jul 2013 01:42:51 +0200 Subject: [PATCH] make store test work --- store/{store_test.bak => store_test.go} | 61 ++++++++++++++----------- 1 file changed, 35 insertions(+), 26 deletions(-) rename store/{store_test.bak => store_test.go} (56%) diff --git a/store/store_test.bak b/store/store_test.go similarity index 56% rename from store/store_test.bak rename to store/store_test.go index 2be7ec276..99429157b 100644 --- a/store/store_test.bak +++ b/store/store_test.go @@ -1,25 +1,33 @@ package store import ( + "encoding/json" "fmt" "testing" "time" ) -func TestStoreGet(t *testing.T) { +func TestStoreGetDelete(t *testing.T) { - Set("foo", "bar", time.Unix(0, 0)) + s := CreateStore(100) + s.Set("foo", "bar", time.Unix(0, 0), 9) + res, err := s.Get("foo") - res := Get("foo") + if err != nil { + t.Fatalf("Unknown error") + } - if res.NewValue != "bar" { + var result Response + json.Unmarshal(res, &result) + + if result.Value != "bar" { t.Fatalf("Cannot get stored value") } - Delete("foo") - res = Get("foo") + s.Delete("foo", 0) + _, err = s.Get("foo") - if res.Exist { + if err == nil { t.Fatalf("Got deleted value") } } @@ -62,61 +70,62 @@ func TestExpire(t *testing.T) { fmt.Println("TEST EXPIRE") // test expire - Set("foo", "bar", time.Now().Add(time.Second*1)) + s := CreateStore(100) + s.Set("foo", "bar", time.Now().Add(time.Second*1), 0) time.Sleep(2 * time.Second) - res := Get("foo") + _, err := s.Get("foo") - if res.Exist { + if err == nil { t.Fatalf("Got expired value") } //test change expire time - Set("foo", "bar", time.Now().Add(time.Second*10)) + s.Set("foo", "bar", time.Now().Add(time.Second*10), 0) - res = Get("foo") + _, err = s.Get("foo") - if !res.Exist { + if err != nil { t.Fatalf("Cannot get Value") } - Set("foo", "barbar", time.Now().Add(time.Second*1)) + s.Set("foo", "barbar", time.Now().Add(time.Second*1), 0) time.Sleep(2 * time.Second) - res = Get("foo") + _, err = s.Get("foo") - if res.Exist { + if err == nil { t.Fatalf("Got expired value") } // test change expire to stable - Set("foo", "bar", time.Now().Add(time.Second*1)) + s.Set("foo", "bar", time.Now().Add(time.Second*1), 0) - Set("foo", "bar", time.Unix(0, 0)) + s.Set("foo", "bar", time.Unix(0, 0), 0) time.Sleep(2 * time.Second) - res = s.Get("foo") + _, err = s.Get("foo") - if !res.Exist { + if err != nil { t.Fatalf("Cannot get Value") } // test stable to expire - s.Set("foo", "bar", time.Now().Add(time.Second*1)) + s.Set("foo", "bar", time.Now().Add(time.Second*1), 0) time.Sleep(2 * time.Second) - res = s.Get("foo") + _, err = s.Get("foo") - if res.Exist { + if err == nil { t.Fatalf("Got expired value") } // test set older node - s.Set("foo", "bar", time.Now().Add(-time.Second*1)) - res = s.Get("foo") + s.Set("foo", "bar", time.Now().Add(-time.Second*1), 0) + _, err = s.Get("foo") - if res.Exist { + if err == nil { t.Fatalf("Got expired value") }