77 lines
1.2 KiB
Go
77 lines
1.2 KiB
Go
package registry
|
|
|
|
import (
|
|
"testing"
|
|
)
|
|
|
|
func TestRemove(t *testing.T) {
|
|
services := []*Service{
|
|
{
|
|
Name: "foo",
|
|
Version: "1.0.0",
|
|
Nodes: []*Node{
|
|
{
|
|
Id: "foo-123",
|
|
Address: "localhost",
|
|
Port: 9999,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Name: "foo",
|
|
Version: "1.0.0",
|
|
Nodes: []*Node{
|
|
{
|
|
Id: "foo-123",
|
|
Address: "localhost",
|
|
Port: 6666,
|
|
},
|
|
},
|
|
},
|
|
}
|
|
|
|
servs := Remove([]*Service{services[0]}, []*Service{services[1]})
|
|
if i := len(servs); i > 0 {
|
|
t.Errorf("Expected 0 nodes, got %d: %+v", i, servs)
|
|
}
|
|
t.Logf("Services %+v", servs)
|
|
}
|
|
|
|
func TestRemoveNodes(t *testing.T) {
|
|
services := []*Service{
|
|
{
|
|
Name: "foo",
|
|
Version: "1.0.0",
|
|
Nodes: []*Node{
|
|
{
|
|
Id: "foo-123",
|
|
Address: "localhost",
|
|
Port: 9999,
|
|
},
|
|
{
|
|
Id: "foo-321",
|
|
Address: "localhost",
|
|
Port: 6666,
|
|
},
|
|
},
|
|
},
|
|
{
|
|
Name: "foo",
|
|
Version: "1.0.0",
|
|
Nodes: []*Node{
|
|
{
|
|
Id: "foo-123",
|
|
Address: "localhost",
|
|
Port: 6666,
|
|
},
|
|
},
|
|
},
|
|
}
|
|
|
|
nodes := delNodes(services[0].Nodes, services[1].Nodes)
|
|
if i := len(nodes); i != 1 {
|
|
t.Errorf("Expected only 1 node, got %d: %+v", i, nodes)
|
|
}
|
|
t.Logf("Nodes %+v", nodes)
|
|
}
|