X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=pkg%2Fcontrol%2Ftypes_test.go;h=5e1cfac17dc78cd28cfcfd421dab2a9b7448fa22;hb=83ada00338d2c9fa47d48c406b4a46b9d7888aff;hp=f29b3db85329d83f56cddb551a52a67a74935308;hpb=e406a34d5547107533e65ddfbb2074e96d77b4b3;p=ric-plt%2Fsubmgr.git diff --git a/pkg/control/types_test.go b/pkg/control/types_test.go index f29b3db..5e1cfac 100644 --- a/pkg/control/types_test.go +++ b/pkg/control/types_test.go @@ -23,20 +23,100 @@ import ( "testing" ) -func TestAction(t *testing.T) { +func TestRmrEndpoint(t *testing.T) { - testActionString := func(t *testing.T, val int, str string) { - if Action(val).String() != str { - testError(t, "String for value %d expected %s got %s", val, str, Action(val).String()) + testEp := func(t *testing.T, val string, expect *RmrEndpoint) { + res := NewRmrEndpoint(val) + + if expect == nil && res == nil { + return + } + if res == nil { + testError(t, "Endpoint elems for value %s expected addr %s port %d got nil", val, expect.GetAddr(), expect.GetPort()) + return + } + if expect.GetAddr() != res.GetAddr() || expect.GetPort() != res.GetPort() { + testError(t, "Endpoint elems for value %s expected addr %s port %d got addr %s port %d", val, expect.GetAddr(), expect.GetPort(), res.GetAddr(), res.GetPort()) } + if expect.String() != res.String() { + testError(t, "Endpoint string for value %s expected %s got %s", val, expect.String(), res.String()) + } + + } + + testEp(t, "localhost:8080", &RmrEndpoint{"localhost", 8080}) + testEp(t, "127.0.0.1:8080", &RmrEndpoint{"127.0.0.1", 8080}) + testEp(t, "localhost:70000", nil) + testEp(t, "localhost?8080", nil) + testEp(t, "abcdefghijklmnopqrstuvwxyz", nil) + testEp(t, "", nil) +} + +func TestRmrEndpointList(t *testing.T) { + epl := &RmrEndpointList{} + + // Simple add / has / delete + if epl.AddEndpoint(NewRmrEndpoint("127.0.0.1:8080")) == false { + testError(t, "RmrEndpointList: 8080 add failed") + } + if epl.AddEndpoint(NewRmrEndpoint("127.0.0.1:8080")) == true { + testError(t, "RmrEndpointList: 8080 duplicate add success") + } + if epl.AddEndpoint(NewRmrEndpoint("127.0.0.1:8081")) == false { + testError(t, "RmrEndpointList: 8081 add failed") + } + if epl.HasEndpoint(NewRmrEndpoint("127.0.0.1:8081")) == false { + testError(t, "RmrEndpointList: 8081 has failed") + } + if epl.DelEndpoint(NewRmrEndpoint("127.0.0.1:8081")) == false { + testError(t, "RmrEndpointList: 8081 del failed") + } + if epl.HasEndpoint(NewRmrEndpoint("127.0.0.1:8081")) == true { + testError(t, "RmrEndpointList: 8081 has non existing success") + } + if epl.DelEndpoint(NewRmrEndpoint("127.0.0.1:8081")) == true { + testError(t, "RmrEndpointList: 8081 del non existing success") + } + if epl.DelEndpoint(NewRmrEndpoint("127.0.0.1:8080")) == false { + testError(t, "RmrEndpointList: 8080 del failed") + } + + // list delete + if epl.AddEndpoint(NewRmrEndpoint("127.0.0.1:8080")) == false { + testError(t, "RmrEndpointList: 8080 add failed") + } + if epl.AddEndpoint(NewRmrEndpoint("127.0.0.1:8081")) == false { + testError(t, "RmrEndpointList: 8081 add failed") + } + if epl.AddEndpoint(NewRmrEndpoint("127.0.0.1:8082")) == false { + testError(t, "RmrEndpointList: 8082 add failed") + } + + epl2 := &RmrEndpointList{} + if epl2.AddEndpoint(NewRmrEndpoint("127.0.0.1:9080")) == false { + testError(t, "RmrEndpointList: othlist add 9080 failed") + } + + if epl.DelEndpoints(epl2) == true { + testError(t, "RmrEndpointList: delete list not existing successs") + } + + if epl2.AddEndpoint(NewRmrEndpoint("127.0.0.1:8080")) == false { + testError(t, "RmrEndpointList: othlist add 8080 failed") + } + if epl.DelEndpoints(epl2) == false { + testError(t, "RmrEndpointList: delete list 8080,9080 failed") + } + + if epl2.AddEndpoint(NewRmrEndpoint("127.0.0.1:8081")) == false { + testError(t, "RmrEndpointList: othlist add 8081 failed") + } + if epl2.AddEndpoint(NewRmrEndpoint("127.0.0.1:8082")) == false { + testError(t, "RmrEndpointList: othlist add 8082 failed") + } + + if epl.DelEndpoints(epl2) == false { + testError(t, "RmrEndpointList: delete list 8080,8081,8082,9080 failed") } - testActionString(t, 0, "CREATE") - testActionString(t, 1, "MERGE") - testActionString(t, 2, "NONE") - testActionString(t, 3, "DELETE") - testActionString(t, 5, "UNKNOWN") - testActionString(t, 6, "UNKNOWN") - testActionString(t, 7, "UNKNOWN") - testActionString(t, 10, "UNKNOWN") }