X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=store%2Fstore_test.go;fp=store%2Fstore_test.go;h=f36fcbbc998f69530b3674f1c8476c5ce001ec26;hb=c89b19c863fc41c0312358a866aebd425f498c76;hp=0000000000000000000000000000000000000000;hpb=20fddcfb4f87e47d9e49eef6ed32cd3c181d6d2b;p=epoint diff --git a/store/store_test.go b/store/store_test.go new file mode 100644 index 0000000..f36fcbb --- /dev/null +++ b/store/store_test.go @@ -0,0 +1,79 @@ +package store + +import ( + "testing" +) + +var testData = map[string]string { + "A" : "a", + "B" : "b", + "C" : "c", + "D" : "d", + "foo_bar-baz" : "a\nb\nc\nd\n", +} + +func TestStore(t *testing.T) { + c, err := Open("teststore") + defer c.Close() + if err != nil { + t.Errorf("open failed: %s", err) + return + } + err = c.Ensure("abc") + if err != nil { + t.Errorf("ensure failed: %s", err) + return + } + for k, v := range testData { + err = c.Set("abc", k, []byte(v)) + if err != nil { + t.Errorf("Set failed: %s", err) + } + } + for k, v := range testData { + d, err := c.Get("abc", k) + if err != nil { + t.Errorf("Get failed: %s", err) + continue + } + if string(d) != v { + t.Errorf("expected %s; got %s", v, string(d)) + } + } +} + +func TestPersist(t *testing.T) { + c, err := Open("teststore") + if err != nil { + t.Errorf("open failed: %s", err) + return + } + err = c.Ensure("abc") + if err != nil { + t.Errorf("ensure failed: %s", err) + return + } + for k, v := range testData { + err = c.Set("abc", k, []byte(v)) + if err != nil { + t.Errorf("Set failed: %s", err) + } + } + c.Close() + + c, err = Open("teststore") + if err != nil { + t.Errorf("open failed: %s", err) + return + } + for k, v := range testData { + d, err := c.Get("abc", k) + if err != nil { + t.Errorf("Get failed: %s", err) + continue + } + if string(d) != v { + t.Errorf("expected %s; got %s", v, string(d)) + } + } +}