2021-01-29 13:17:32 +03:00
|
|
|
package register
|
2018-12-04 19:41:40 +03:00
|
|
|
|
|
|
|
import (
|
2020-04-09 14:05:46 +03:00
|
|
|
"os"
|
2018-12-04 19:41:40 +03:00
|
|
|
"testing"
|
2020-04-10 19:41:10 +03:00
|
|
|
|
2021-01-29 13:17:32 +03:00
|
|
|
"github.com/unistack-org/micro/v3/register"
|
2018-12-04 19:41:40 +03:00
|
|
|
)
|
|
|
|
|
2019-07-04 13:36:49 +03:00
|
|
|
func TestRemove(t *testing.T) {
|
2021-01-29 13:17:32 +03:00
|
|
|
services := []*register.Service{
|
2018-12-04 19:41:40 +03:00
|
|
|
{
|
|
|
|
Name: "foo",
|
|
|
|
Version: "1.0.0",
|
2021-01-29 13:17:32 +03:00
|
|
|
Nodes: []*register.Node{
|
2018-12-04 19:41:40 +03:00
|
|
|
{
|
2021-04-27 08:32:47 +03:00
|
|
|
ID: "foo-123",
|
2019-07-08 10:01:42 +03:00
|
|
|
Address: "localhost:9999",
|
2018-12-04 19:41:40 +03:00
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
Name: "foo",
|
|
|
|
Version: "1.0.0",
|
2021-01-29 13:17:32 +03:00
|
|
|
Nodes: []*register.Node{
|
2018-12-04 19:41:40 +03:00
|
|
|
{
|
2021-04-27 08:32:47 +03:00
|
|
|
ID: "foo-123",
|
2019-07-08 10:01:42 +03:00
|
|
|
Address: "localhost:6666",
|
2018-12-04 19:41:40 +03:00
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
}
|
|
|
|
|
2021-01-29 13:17:32 +03:00
|
|
|
servs := Remove([]*register.Service{services[0]}, []*register.Service{services[1]})
|
2018-12-04 19:41:40 +03:00
|
|
|
if i := len(servs); i > 0 {
|
|
|
|
t.Errorf("Expected 0 nodes, got %d: %+v", i, servs)
|
|
|
|
}
|
2020-08-25 13:44:41 +03:00
|
|
|
if len(os.Getenv("INTEGRATION_TESTS")) == 0 {
|
2020-04-09 14:05:46 +03:00
|
|
|
t.Logf("Services %+v", servs)
|
|
|
|
}
|
2018-12-04 19:41:40 +03:00
|
|
|
}
|
|
|
|
|
2019-07-04 13:36:49 +03:00
|
|
|
func TestRemoveNodes(t *testing.T) {
|
2021-01-29 13:17:32 +03:00
|
|
|
services := []*register.Service{
|
2018-12-04 19:41:40 +03:00
|
|
|
{
|
|
|
|
Name: "foo",
|
|
|
|
Version: "1.0.0",
|
2021-01-29 13:17:32 +03:00
|
|
|
Nodes: []*register.Node{
|
2018-12-04 19:41:40 +03:00
|
|
|
{
|
2021-04-27 08:32:47 +03:00
|
|
|
ID: "foo-123",
|
2019-07-08 10:01:42 +03:00
|
|
|
Address: "localhost:9999",
|
2018-12-04 19:41:40 +03:00
|
|
|
},
|
|
|
|
{
|
2021-04-27 08:32:47 +03:00
|
|
|
ID: "foo-321",
|
2019-07-08 10:01:42 +03:00
|
|
|
Address: "localhost:6666",
|
2018-12-04 19:41:40 +03:00
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
Name: "foo",
|
|
|
|
Version: "1.0.0",
|
2021-01-29 13:17:32 +03:00
|
|
|
Nodes: []*register.Node{
|
2018-12-04 19:41:40 +03:00
|
|
|
{
|
2021-04-27 08:32:47 +03:00
|
|
|
ID: "foo-123",
|
2019-07-08 10:01:42 +03:00
|
|
|
Address: "localhost:6666",
|
2018-12-04 19:41:40 +03:00
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
}
|
|
|
|
|
2019-07-04 13:36:49 +03:00
|
|
|
nodes := delNodes(services[0].Nodes, services[1].Nodes)
|
2018-12-04 19:41:40 +03:00
|
|
|
if i := len(nodes); i != 1 {
|
|
|
|
t.Errorf("Expected only 1 node, got %d: %+v", i, nodes)
|
|
|
|
}
|
2020-08-25 13:44:41 +03:00
|
|
|
if len(os.Getenv("INTEGRATION_TESTS")) == 0 {
|
2020-04-09 14:05:46 +03:00
|
|
|
t.Logf("Nodes %+v", nodes)
|
|
|
|
}
|
2018-12-04 19:41:40 +03:00
|
|
|
}
|