package node_test import ( "testing" edgenode "iop/apps/edge/internal/node" "iop/packages/config" ) func TestLoadFromConfig_Success(t *testing.T) { store, err := edgenode.LoadFromConfig([]config.NodeDefinition{ {Alias: "alpha", Token: "token-alpha"}, {Alias: "beta", Token: "token-beta"}, }) if err != nil { t.Fatalf("load from config: %v", err) } rec, ok := store.FindByToken("token-alpha") if !ok { t.Fatal("expected record for token-alpha") } if rec.ID != "node-alpha" { t.Fatalf("expected id %q, got %q", "node-alpha", rec.ID) } if rec.Alias != "alpha" { t.Fatalf("expected alias %q, got %q", "alpha", rec.Alias) } if _, ok := store.FindByToken("missing"); ok { t.Fatal("expected missing token lookup to fail") } } func TestLoadFromConfig_DuplicateToken(t *testing.T) { _, err := edgenode.LoadFromConfig([]config.NodeDefinition{ {Alias: "alpha", Token: "token"}, {Alias: "beta", Token: "token"}, }) if err == nil { t.Fatal("expected duplicate token error") } } func TestLoadFromConfig_DuplicateAlias(t *testing.T) { _, err := edgenode.LoadFromConfig([]config.NodeDefinition{ {Alias: "alpha", Token: "token-alpha"}, {Alias: "alpha", Token: "token-beta"}, }) if err == nil { t.Fatal("expected duplicate alias error") } } func TestLoadFromConfig_EmptyToken(t *testing.T) { _, err := edgenode.LoadFromConfig([]config.NodeDefinition{ {Alias: "alpha"}, }) if err == nil { t.Fatal("expected empty token error") } }