micro-tests/client/mock/proto/github_micro_http.pb.go
Vasiliy Tolstov 00e71fc9ec client/mock: add new tests
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2023-03-30 02:45:20 +03:00

60 lines
1.5 KiB
Go

package pb
import (
context "context"
http "net/http"
v3 "go.unistack.org/micro-client-http/v3"
v31 "go.unistack.org/micro-server-http/v3"
client "go.unistack.org/micro/v3/client"
server "go.unistack.org/micro/v3/server"
)
type githubClient struct {
c client.Client
name string
}
func NewGithubClient(name string, c client.Client) GithubClient {
return &githubClient{c: c, name: name}
}
func (c *githubClient) LookupUser(ctx context.Context, req *LookupUserReq, opts ...client.CallOption) (*LookupUserRsp, error) {
errmap := make(map[string]interface{}, 1)
errmap["default"] = &Error{}
opts = append(opts,
v3.ErrorMap(errmap),
)
opts = append(opts,
v3.Method(http.MethodGet),
v3.Path("/users/{username}"),
)
rsp := &LookupUserRsp{}
err := c.c.Call(ctx, c.c.NewRequest(c.name, "Github.LookupUser", req), rsp, opts...)
if err != nil {
return nil, err
}
return rsp, nil
}
type githubServer struct {
GithubServer
}
func (h *githubServer) LookupUser(ctx context.Context, req *LookupUserReq, rsp *LookupUserRsp) error {
return h.GithubServer.LookupUser(ctx, req, rsp)
}
func RegisterGithubServer(s server.Server, sh GithubServer, opts ...server.HandlerOption) error {
type github interface {
LookupUser(ctx context.Context, req *LookupUserReq, rsp *LookupUserRsp) error
}
type Github struct {
github
}
h := &githubServer{sh}
var nopts []server.HandlerOption
nopts = append(nopts, v31.HandlerEndpoints(GithubServerEndpoints))
return s.Handle(s.NewHandler(&Github{h}, append(nopts, opts...)...))
}