Create & Init Project...

This commit is contained in:
2019-04-22 18:49:16 +08:00
commit fc4fa37393
25440 changed files with 4054998 additions and 0 deletions

View File

@@ -0,0 +1,42 @@
package(default_visibility = ["//visibility:public"])
load(
"@io_bazel_rules_go//go:def.bzl",
"go_test",
"go_library",
)
go_test(
name = "go_default_test",
srcs = ["client_test.go"],
embed = [":go_default_library"],
rundir = ".",
tags = ["automanaged"],
deps = ["//app/service/main/passport/model:go_default_library"],
)
go_library(
name = "go_default_library",
srcs = ["client.go"],
importpath = "go-common/app/service/main/passport/rpc/client",
tags = ["automanaged"],
visibility = ["//visibility:public"],
deps = [
"//app/service/main/passport/model:go_default_library",
"//library/net/rpc:go_default_library",
],
)
filegroup(
name = "package-srcs",
srcs = glob(["**"]),
tags = ["automanaged"],
visibility = ["//visibility:private"],
)
filegroup(
name = "all-srcs",
srcs = [":package-srcs"],
tags = ["automanaged"],
visibility = ["//visibility:public"],
)

View File

@@ -0,0 +1,35 @@
package client
import (
"context"
"go-common/app/service/main/passport/model"
"go-common/library/net/rpc"
)
const (
_appid = "passport.service"
)
// Client2 struct
type Client2 struct {
client *rpc.Client2
}
// New Client2 init
func New(c *rpc.ClientConfig) (s *Client2) {
s = &Client2{}
s.client = rpc.NewDiscoveryCli(_appid, c)
return
}
const (
_loginLogs = "RPC.LoginLogs"
)
// LoginLogs get the latest limit login logs.
func (c2 *Client2) LoginLogs(c context.Context, arg *model.ArgLoginLogs) (res []*model.LoginLog, err error) {
res = make([]*model.LoginLog, 0)
err = c2.client.Call(c, _loginLogs, arg, &res)
return
}

View File

@@ -0,0 +1,40 @@
package client
import (
"context"
"encoding/json"
"sync"
"testing"
"time"
"go-common/app/service/main/passport/model"
)
var (
once sync.Once
passportSvc *Client2
)
func startRPCServer() {
passportSvc = New(nil)
time.Sleep(time.Second * 2)
}
func TestService2_LoginLogs(t *testing.T) {
once.Do(startRPCServer)
arg := &model.ArgLoginLogs{
Mid: 88888970,
}
if res, err := passportSvc.LoginLogs(context.TODO(), arg); err != nil {
t.Errorf("failed to call rpc, passportSvc.LoginLogs(%v) error(%v)", arg, err)
t.FailNow()
} else if len(res) == 0 {
t.Errorf("res is incorrect, expected res length > 0 but got 0")
t.FailNow()
} else {
for i, v := range res {
str, _ := json.Marshal(v)
t.Logf("res[%d]: %s", i, str)
}
}
}

View File

@@ -0,0 +1,51 @@
package(default_visibility = ["//visibility:public"])
load(
"@io_bazel_rules_go//go:def.bzl",
"go_test",
"go_library",
)
go_test(
name = "go_default_test",
srcs = ["rpc_test.go"],
embed = [":go_default_library"],
rundir = ".",
tags = ["automanaged"],
deps = [
"//app/service/main/passport/conf:go_default_library",
"//app/service/main/passport/model:go_default_library",
"//app/service/main/passport/service:go_default_library",
"//library/log:go_default_library",
"//library/net/rpc:go_default_library",
],
)
go_library(
name = "go_default_library",
srcs = ["rpc.go"],
importpath = "go-common/app/service/main/passport/rpc/server",
tags = ["automanaged"],
visibility = ["//visibility:public"],
deps = [
"//app/service/main/passport/conf:go_default_library",
"//app/service/main/passport/model:go_default_library",
"//app/service/main/passport/service:go_default_library",
"//library/net/rpc:go_default_library",
"//library/net/rpc/context:go_default_library",
],
)
filegroup(
name = "package-srcs",
srcs = glob(["**"]),
tags = ["automanaged"],
visibility = ["//visibility:private"],
)
filegroup(
name = "all-srcs",
srcs = [":package-srcs"],
tags = ["automanaged"],
visibility = ["//visibility:public"],
)

View File

@@ -0,0 +1,37 @@
package server
import (
"go-common/app/service/main/passport/conf"
"go-common/app/service/main/passport/model"
"go-common/app/service/main/passport/service"
"go-common/library/net/rpc"
"go-common/library/net/rpc/context"
)
// RPC server struct
type RPC struct {
s *service.Service
}
// New new rpc server.
func New(c *conf.Config, s *service.Service) (svr *rpc.Server) {
r := &RPC{s: s}
svr = rpc.NewServer(c.RPCServer)
if err := svr.Register(r); err != nil {
panic(err)
}
return
}
// Ping check connection success.
func (r *RPC) Ping(c context.Context, arg *struct{}, res *struct{}) (err error) {
return
}
// LoginLogs get the latest limit login logs.
func (r *RPC) LoginLogs(c context.Context, arg *model.ArgLoginLogs, res *[]*model.LoginLog) (err error) {
if ms, err := r.s.LoginLogs(c, arg.Mid, arg.Limit); err == nil {
*res = ms
}
return
}

View File

@@ -0,0 +1,37 @@
package server
import (
"context"
"testing"
"time"
"go-common/app/service/main/passport/conf"
"go-common/app/service/main/passport/model"
"go-common/app/service/main/passport/service"
"go-common/library/log"
"go-common/library/net/rpc"
)
const (
_rpcLoginLogs = "RPC.LoginLogs"
)
func TestRPC_LoginLogs(t *testing.T) {
if err := conf.Init(); err != nil {
panic(err)
}
log.Init(conf.Conf.Xlog)
s := service.New(conf.Conf)
r := New(conf.Conf, s)
defer r.Close()
c2 := rpc.NewDiscoveryCli("passport.service", nil)
time.Sleep(time.Second * 2)
ms := make([]*model.LoginLog, 0)
if err := c2.Call(context.TODO(), _rpcLoginLogs, &model.ArgLoginLogs{
Mid: 88888970,
}, &ms); err != nil {
t.Errorf("failed to call %s, error(%v)", _rpcLoginLogs, err)
t.FailNow()
}
}