+func TestRmrEndpoint(t *testing.T) {
+
+ 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.Get())
+ }
+
+ }
+
+ 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)
+}
+