From 695c22a7d1ddce4b1bba94dc062eb217cc20f40d Mon Sep 17 00:00:00 2001 From: Zander Mackie Date: Tue, 13 Dec 2016 07:46:29 -0500 Subject: [PATCH] Tests for OfflineRouting storage and Retrieval License: MIT Signed-off-by: Zander Mackie --- routing/offline/offline_test.go | 48 +++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 routing/offline/offline_test.go diff --git a/routing/offline/offline_test.go b/routing/offline/offline_test.go new file mode 100644 index 000000000..5f031a14a --- /dev/null +++ b/routing/offline/offline_test.go @@ -0,0 +1,48 @@ +package offline + +import ( + "bytes" + "context" + "github.com/ipfs/go-ipfs/thirdparty/testutil" + ds "gx/ipfs/QmRWDav6mzWseLWeYfVd5fvUKiVe9xNH29YfMF438fG364/go-datastore" + "testing" +) + +func TestOfflineRouterStorage(t *testing.T) { + ctx := context.Background() + + nds := ds.NewMapDatastore() + privkey, _, _ := testutil.RandTestKeyPair(128) + offline := NewOfflineRouter(nds, privkey) + + err := offline.PutValue(ctx, "key", []byte("testing 1 2 3")) + if err != nil { + t.Fatal(err) + } + + val, err := offline.GetValue(ctx, "key") + if !bytes.Equal([]byte("testing 1 2 3"), val) { + t.Fatal("OfflineRouter does not properly store") + } + + val, err = offline.GetValue(ctx, "notHere") + if err == nil { + t.Fatal("Router should throw errors for unfound records") + } + + recVal, err := offline.GetValues(ctx, "key", 0) + if err != nil { + t.Fatal(err) + } + + _, err = offline.GetValues(ctx, "notHere", 0) + if err == nil { + t.Fatal("Router should throw errors for unfound records") + } + + local := recVal[0].Val + if !bytes.Equal([]byte("testing 1 2 3"), local) { + t.Fatal("OfflineRouter does not properly store") + } +} +