package rpc //import ( // "testing" // "time" // // "github.com/stretchr/testify/assert" //) // //type testService struct{} // //func (ts *testService) Echo(msg string, r *string) error { *r = msg; return nil } // //func Test_Disabled(t *testing.T) { // s := &Service{} // ok, err := s.Init(&Config{Enable: false}, service.NewContainer(nil), nil) // // assert.NoError(t, err) // assert.False(t, ok) //} // //func Test_RegisterNotConfigured(t *testing.T) { // s := &Service{} // assert.Error(t, s.Register("test", &testService{})) // // client, err := s.Client() // assert.Nil(t, client) // assert.Error(t, err) // assert.Error(t, s.Serve()) //} // //func Test_Enabled(t *testing.T) { // s := &Service{} // ok, err := s.Init(&Config{Enable: true, Listen: "tcp://localhost:9008"}, service.NewContainer(nil), nil) // // assert.NoError(t, err) // assert.True(t, ok) //} // //func Test_StopNonServing(t *testing.T) { // s := &Service{} // ok, err := s.Init(&Config{Enable: true, Listen: "tcp://localhost:9008"}, service.NewContainer(nil), nil) // // assert.NoError(t, err) // assert.True(t, ok) // s.Stop() //} // //func Test_Serve_Errors(t *testing.T) { // s := &Service{} // ok, err := s.Init(&Config{Enable: true, Listen: "malformed"}, service.NewContainer(nil), nil) // assert.NoError(t, err) // assert.True(t, ok) // // assert.Error(t, s.Serve()) // // client, err := s.Client() // assert.Nil(t, client) // assert.Error(t, err) //} // //func Test_Serve_Client(t *testing.T) { // s := &Service{} // ok, err := s.Init(&Config{Enable: true, Listen: "tcp://localhost:9018"}, service.NewContainer(nil), nil) // assert.NoError(t, err) // assert.True(t, ok) // // defer s.Stop() // // assert.NoError(t, s.Register("test", &testService{})) // // go func() { assert.NoError(t, s.Serve()) }() // time.Sleep(time.Second) // // client, err := s.Client() // assert.NotNil(t, client) // assert.NoError(t, err) // // var resp string // assert.NoError(t, client.Call("test.Echo", "hello world", &resp)) // assert.Equal(t, "hello world", resp) // assert.NoError(t, client.Close()) //} // //func TestSetEnv(t *testing.T) { // s := &Service{} // e := env.NewService(map[string]string{}) // ok, err := s.Init(&Config{Enable: true, Listen: "tcp://localhost:9018"}, service.NewContainer(nil), e) // // assert.NoError(t, err) // assert.True(t, ok) // // v, _ := e.GetEnv() // assert.Equal(t, "tcp://localhost:9018", v["RR_RPC"]) //}