- Add edge node unit tests and transport package - Add node test client and related artifacts - Update bootstrap, node, and config modules - Add proto generated files - Update Makefile and configuration files
39 lines
906 B
Go
39 lines
906 B
Go
package node_test
|
|
|
|
import (
|
|
"testing"
|
|
|
|
toki "git.toki-labs.com/toki/common-proto-socket/go"
|
|
|
|
edgenode "iop/apps/edge/internal/node"
|
|
iop "iop/proto/gen/iop"
|
|
)
|
|
|
|
func TestRegistry_RegisterAndCount(t *testing.T) {
|
|
reg := edgenode.NewRegistry()
|
|
entry := &edgenode.NodeEntry{
|
|
NodeID: "node-001",
|
|
Client: &toki.TcpClient{},
|
|
Adapters: []*iop.AdapterInfo{{Name: "mock"}},
|
|
}
|
|
reg.Register(entry)
|
|
if reg.Count() != 1 {
|
|
t.Fatalf("expected 1 node, got %d", reg.Count())
|
|
}
|
|
}
|
|
|
|
func TestRegistry_Pick_Empty(t *testing.T) {
|
|
reg := edgenode.NewRegistry()
|
|
if _, err := reg.Pick(); err == nil {
|
|
t.Fatal("expected error on empty registry")
|
|
}
|
|
}
|
|
|
|
func TestRegistry_Unregister(t *testing.T) {
|
|
reg := edgenode.NewRegistry()
|
|
reg.Register(&edgenode.NodeEntry{NodeID: "node-001"})
|
|
reg.Unregister("node-001")
|
|
if reg.Count() != 0 {
|
|
t.Fatalf("expected 0 nodes after unregister, got %d", reg.Count())
|
|
}
|
|
}
|