56 lines
1.3 KiB
Go
56 lines
1.3 KiB
Go
package graphvent
|
|
|
|
import (
|
|
"testing"
|
|
"time"
|
|
"crypto/rand"
|
|
"crypto/ed25519"
|
|
)
|
|
|
|
func TestNodeDB(t *testing.T) {
|
|
ctx := logTestContext(t, []string{"test", "node", "db"})
|
|
|
|
node_listener := NewListenerExt(10)
|
|
node, err := ctx.NewNode(nil, "Node", NewLockableExt(nil), node_listener)
|
|
fatalErr(t, err)
|
|
|
|
err = ctx.Stop()
|
|
fatalErr(t, err)
|
|
|
|
_, err = ctx.GetNode(node.ID)
|
|
fatalErr(t, err)
|
|
}
|
|
|
|
func TestNodeRead(t *testing.T) {
|
|
ctx := logTestContext(t, []string{"test"})
|
|
|
|
n1_pub, n1_key, err := ed25519.GenerateKey(rand.Reader)
|
|
fatalErr(t, err)
|
|
n2_pub, n2_key, err := ed25519.GenerateKey(rand.Reader)
|
|
fatalErr(t, err)
|
|
|
|
n1_id := KeyID(n1_pub)
|
|
n2_id := KeyID(n2_pub)
|
|
|
|
ctx.Log.Logf("test", "N1: %s", n1_id)
|
|
ctx.Log.Logf("test", "N2: %s", n2_id)
|
|
|
|
n2_listener := NewListenerExt(10)
|
|
n2, err := ctx.NewNode(n2_key, "Node", n2_listener)
|
|
fatalErr(t, err)
|
|
|
|
n1, err := ctx.NewNode(n1_key, "Node", NewListenerExt(10))
|
|
fatalErr(t, err)
|
|
|
|
read_sig := NewReadSignal([]string{"buffer"})
|
|
msgs := []Message{{n1.ID, read_sig}}
|
|
err = ctx.Send(n2, msgs)
|
|
fatalErr(t, err)
|
|
|
|
res, err := WaitForSignal(n2_listener.Chan, 10*time.Millisecond, func(sig *ReadResultSignal) bool {
|
|
return true
|
|
})
|
|
fatalErr(t, err)
|
|
ctx.Log.Logf("test", "READ_RESULT: %+v", res)
|
|
}
|