mirror of
https://github.com/d0zingcat/gocryptotrader.git
synced 2026-05-13 15:09:42 +00:00
gRPC: Uptime runtime to v2 (#590)
* Upgrade to gRPC v2 runtime * Fix tests * Update docs * Win/Linus/macOS path friendliness * Swagger/docs update
This commit is contained in:
@@ -17,7 +17,7 @@ import (
|
||||
"github.com/gofrs/uuid"
|
||||
"github.com/golang/protobuf/ptypes"
|
||||
grpcauth "github.com/grpc-ecosystem/go-grpc-middleware/auth"
|
||||
grpcruntime "github.com/grpc-ecosystem/grpc-gateway/runtime"
|
||||
"github.com/grpc-ecosystem/grpc-gateway/v2/runtime"
|
||||
"github.com/thrasher-corp/gocryptotrader/common"
|
||||
"github.com/thrasher-corp/gocryptotrader/common/crypto"
|
||||
"github.com/thrasher-corp/gocryptotrader/common/file"
|
||||
@@ -67,6 +67,7 @@ var (
|
||||
// RPCServer struct
|
||||
type RPCServer struct {
|
||||
*Engine
|
||||
gctrpc.UnimplementedGoCryptoTraderServer
|
||||
}
|
||||
|
||||
func (bot *Engine) authenticateClient(ctx context.Context) (context.Context, error) {
|
||||
@@ -126,7 +127,7 @@ func StartRPCServer(engine *Engine) {
|
||||
grpc.UnaryInterceptor(grpcauth.UnaryServerInterceptor(engine.authenticateClient)),
|
||||
}
|
||||
server := grpc.NewServer(opts...)
|
||||
s := RPCServer{engine}
|
||||
s := RPCServer{Engine: engine}
|
||||
gctrpc.RegisterGoCryptoTraderServer(server, &s)
|
||||
|
||||
go func() {
|
||||
@@ -154,7 +155,7 @@ func (s *RPCServer) StartRPCRESTProxy() {
|
||||
return
|
||||
}
|
||||
|
||||
mux := grpcruntime.NewServeMux()
|
||||
mux := runtime.NewServeMux()
|
||||
opts := []grpc.DialOption{grpc.WithTransportCredentials(creds),
|
||||
grpc.WithPerRPCCredentials(auth.BasicAuth{
|
||||
Username: s.Config.RemoteControl.Username,
|
||||
|
||||
@@ -95,7 +95,7 @@ func CleanRPCTest(t *testing.T, engerino *Engine) {
|
||||
func TestGetSavedTrades(t *testing.T) {
|
||||
engerino := RPCTestSetup(t)
|
||||
defer CleanRPCTest(t, engerino)
|
||||
s := RPCServer{engerino}
|
||||
s := RPCServer{Engine: engerino}
|
||||
_, err := s.GetSavedTrades(context.Background(), &gctrpc.GetSavedTradesRequest{})
|
||||
if err == nil {
|
||||
t.Fatal(unexpectedLackOfError)
|
||||
@@ -172,7 +172,7 @@ func TestGetSavedTrades(t *testing.T) {
|
||||
func TestConvertTradesToCandles(t *testing.T) {
|
||||
engerino := RPCTestSetup(t)
|
||||
defer CleanRPCTest(t, engerino)
|
||||
s := RPCServer{engerino}
|
||||
s := RPCServer{Engine: engerino}
|
||||
// bad param test
|
||||
_, err := s.ConvertTradesToCandles(context.Background(), &gctrpc.ConvertTradesToCandlesRequest{})
|
||||
if err == nil {
|
||||
@@ -325,7 +325,7 @@ func TestConvertTradesToCandles(t *testing.T) {
|
||||
func TestGetHistoricCandles(t *testing.T) {
|
||||
engerino := RPCTestSetup(t)
|
||||
defer CleanRPCTest(t, engerino)
|
||||
s := RPCServer{engerino}
|
||||
s := RPCServer{Engine: engerino}
|
||||
// error checks
|
||||
_, err := s.GetHistoricCandles(context.Background(), &gctrpc.GetHistoricCandlesRequest{
|
||||
Exchange: "",
|
||||
@@ -453,7 +453,7 @@ func TestGetHistoricCandles(t *testing.T) {
|
||||
func TestFindMissingSavedTradeIntervals(t *testing.T) {
|
||||
engerino := RPCTestSetup(t)
|
||||
defer CleanRPCTest(t, engerino)
|
||||
s := RPCServer{engerino}
|
||||
s := RPCServer{Engine: engerino}
|
||||
// bad request checks
|
||||
_, err := s.FindMissingSavedTradeIntervals(context.Background(), &gctrpc.FindMissingTradePeriodsRequest{})
|
||||
if err == nil {
|
||||
@@ -555,7 +555,7 @@ func TestFindMissingSavedTradeIntervals(t *testing.T) {
|
||||
func TestFindMissingSavedCandleIntervals(t *testing.T) {
|
||||
engerino := RPCTestSetup(t)
|
||||
defer CleanRPCTest(t, engerino)
|
||||
s := RPCServer{engerino}
|
||||
s := RPCServer{Engine: engerino}
|
||||
// bad request checks
|
||||
_, err := s.FindMissingSavedCandleIntervals(context.Background(), &gctrpc.FindMissingCandlePeriodsRequest{})
|
||||
if err == nil {
|
||||
@@ -668,7 +668,7 @@ func TestFindMissingSavedCandleIntervals(t *testing.T) {
|
||||
func TestSetExchangeTradeProcessing(t *testing.T) {
|
||||
engerino := RPCTestSetup(t)
|
||||
defer CleanRPCTest(t, engerino)
|
||||
s := RPCServer{engerino}
|
||||
s := RPCServer{Engine: engerino}
|
||||
_, err := s.SetExchangeTradeProcessing(context.Background(), &gctrpc.SetExchangeTradeProcessingRequest{Exchange: testExchange, Status: true})
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
@@ -695,7 +695,7 @@ func TestSetExchangeTradeProcessing(t *testing.T) {
|
||||
func TestGetRecentTrades(t *testing.T) {
|
||||
engerino := RPCTestSetup(t)
|
||||
defer CleanRPCTest(t, engerino)
|
||||
s := RPCServer{engerino}
|
||||
s := RPCServer{Engine: engerino}
|
||||
_, err := s.GetRecentTrades(context.Background(), &gctrpc.GetSavedTradesRequest{})
|
||||
if err == nil {
|
||||
t.Error(unexpectedLackOfError)
|
||||
@@ -739,7 +739,7 @@ func TestGetRecentTrades(t *testing.T) {
|
||||
func TestGetHistoricTrades(t *testing.T) {
|
||||
engerino := RPCTestSetup(t)
|
||||
defer CleanRPCTest(t, engerino)
|
||||
s := RPCServer{engerino}
|
||||
s := RPCServer{Engine: engerino}
|
||||
err := s.GetHistoricTrades(&gctrpc.GetSavedTradesRequest{}, nil)
|
||||
if err == nil {
|
||||
t.Error(unexpectedLackOfError)
|
||||
|
||||
Reference in New Issue
Block a user