Testing a gRPC service : <p>I'd like to test a gRPC service written in Go. The example I'm using is the Hello World server example from the <a href="https://github.com/grpc/grpc-go/blob/master/examples/helloworld/greeter_server/main.go" rel="noreferrer">grpc-go repo</a>.</p>

<p>The protobuf definition is as follows:</p>

<pre><code>syntax = "proto3";

package helloworld;

// The greeting service definition.
service Greeter {
  // Sends a greeting
  rpc SayHello (HelloRequest) returns (HelloReply) {}
}

// The request message containing the user's name.
message HelloRequest {
  string name = 1;
}

// The response message containing the greetings
message HelloReply {
  string message = 1;
}
</code></pre>

<p>And the type in the <code>greeter_server</code> main is:</p>

<pre><code>// server is used to implement helloworld.GreeterServer.
type server struct{}

// SayHello implements helloworld.GreeterServer
func (s *server) SayHello(ctx context.Context, in *pb.HelloRequest) (*pb.HelloReply, error) {
    return &amp;pb.HelloReply{Message: "Hello " + in.Name}, nil
}
</code></pre>

<p>I've looked for examples but I couldn't find any on how to implement tests for a gRPC service in Go.</p>
