重构远程接口,替换为Baiyin SDK & 添加实名认证处理逻辑

This commit is contained in:
2025-04-16 10:41:04 +08:00
parent 0cf9b98059
commit f1456d01ea
11 changed files with 319 additions and 88 deletions

View File

@@ -4,7 +4,7 @@ import (
"context"
"encoding/json"
"fmt"
"platform/pkg/remote"
"platform/pkg/sdks/baiyin"
"platform/pkg/testutil"
"platform/web/common"
"platform/web/models"
@@ -288,9 +288,9 @@ func Test_channelService_CreateChannel(t *testing.T) {
ctx := context.WithValue(context.Background(), requestid.ConfigDefault.ContextKey, "test-request-id")
var adminAuth = &AuthContext{Payload: Payload{Id: 100, Type: PayloadAdmin}}
var userAuth = &AuthContext{Payload: Payload{Id: 101, Type: PayloadUser}}
mc.AutoQueryMock = func() (remote.CloudConnectResp, error) {
return remote.CloudConnectResp{
"test-proxy": []remote.AutoConfig{
mc.AutoQueryMock = func() (baiyin.CloudConnectResp, error) {
return baiyin.CloudConnectResp{
"test-proxy": []baiyin.AutoConfig{
{Province: "河南省", Count: 10},
},
}, nil
@@ -373,14 +373,14 @@ func Test_channelService_CreateChannel(t *testing.T) {
mr.FlushAll()
resetDb()
mc.ConnectMock = func(param remote.CloudConnectReq) error {
mc.ConnectMock = func(param baiyin.CloudConnectReq) error {
if param.Uuid != proxy.Name {
return fmt.Errorf("代理名称不符合预期: %s", param.Uuid)
}
if len(param.Edge) != 0 {
return fmt.Errorf("边缘节点不符合预期: %v", param.Edge)
}
if !reflect.DeepEqual(param.AutoConfig, []remote.AutoConfig{
if !reflect.DeepEqual(param.AutoConfig, []baiyin.AutoConfig{
{Province: "河南省", Count: 10},
{Province: "北京市", Count: 6},
}) {
@@ -389,7 +389,7 @@ func Test_channelService_CreateChannel(t *testing.T) {
return nil
}
mg.PortConfigsMock = func(c *testutil.MockGatewayClient, params []remote.PortConfigsReq) error {
mg.PortConfigsMock = func(c *testutil.MockGatewayClient, params []baiyin.PortConfigsReq) error {
if c.Host != proxy.Host {
return fmt.Errorf("代理主机不符合预期: %s", c.Host)
}
@@ -523,14 +523,14 @@ func Test_channelService_CreateChannel(t *testing.T) {
mr.FlushAll()
resetDb()
mc.ConnectMock = func(param remote.CloudConnectReq) error {
mc.ConnectMock = func(param baiyin.CloudConnectReq) error {
if param.Uuid != proxy.Name {
return fmt.Errorf("代理名称不符合预期: %s", param.Uuid)
}
if len(param.Edge) != 0 {
return fmt.Errorf("边缘节点不符合预期: %v", param.Edge)
}
if !reflect.DeepEqual(param.AutoConfig, []remote.AutoConfig{
if !reflect.DeepEqual(param.AutoConfig, []baiyin.AutoConfig{
{Province: "河南省", Count: 10},
{Province: "北京市", Count: 6},
}) {
@@ -539,7 +539,7 @@ func Test_channelService_CreateChannel(t *testing.T) {
return nil
}
mg.PortConfigsMock = func(c *testutil.MockGatewayClient, params []remote.PortConfigsReq) error {
mg.PortConfigsMock = func(c *testutil.MockGatewayClient, params []baiyin.PortConfigsReq) error {
if c.Host != proxy.Host {
return fmt.Errorf("代理主机不符合预期: %s", c.Host)
}
@@ -667,14 +667,14 @@ func Test_channelService_CreateChannel(t *testing.T) {
mr.FlushAll()
resetDb()
mc.ConnectMock = func(param remote.CloudConnectReq) error {
mc.ConnectMock = func(param baiyin.CloudConnectReq) error {
if param.Uuid != proxy.Name {
return fmt.Errorf("代理名称不符合预期: %s", param.Uuid)
}
if len(param.Edge) != 0 {
return fmt.Errorf("边缘节点不符合预期: %v", param.Edge)
}
if !reflect.DeepEqual(param.AutoConfig, []remote.AutoConfig{
if !reflect.DeepEqual(param.AutoConfig, []baiyin.AutoConfig{
{Province: "河南省", Count: 10},
{Province: "北京市", Count: 6},
}) {
@@ -683,7 +683,7 @@ func Test_channelService_CreateChannel(t *testing.T) {
return nil
}
mg.PortConfigsMock = func(c *testutil.MockGatewayClient, params []remote.PortConfigsReq) error {
mg.PortConfigsMock = func(c *testutil.MockGatewayClient, params []baiyin.PortConfigsReq) error {
if c.Host != proxy.Host {
return fmt.Errorf("代理主机不符合预期: %s", c.Host)
}
@@ -899,9 +899,9 @@ func Test_channelService_CreateChannel(t *testing.T) {
setup: func() {
mr.FlushAll()
resetDb()
mc.AutoQueryMock = func() (remote.CloudConnectResp, error) {
return remote.CloudConnectResp{
"test-proxy": []remote.AutoConfig{
mc.AutoQueryMock = func() (baiyin.CloudConnectResp, error) {
return baiyin.CloudConnectResp{
"test-proxy": []baiyin.AutoConfig{
{Count: 20000},
},
}, nil
@@ -1054,21 +1054,21 @@ func Test_channelService_RemoveChannels(t *testing.T) {
}
// 模拟网关客户端的响应
mg.PortActiveMock = func(m *testutil.MockGatewayClient, param ...remote.PortActiveReq) (map[string]remote.PortData, error) {
mg.PortActiveMock = func(m *testutil.MockGatewayClient, param ...baiyin.PortActiveReq) (map[string]baiyin.PortData, error) {
switch {
case m.Host == proxy.Host:
return map[string]remote.PortData{
return map[string]baiyin.PortData{
"10001": {Edge: []string{"edge1", "edge4"}},
"10002": {Edge: []string{"edge2"}},
}, nil
case m.Host == proxy2.Host:
return map[string]remote.PortData{
return map[string]baiyin.PortData{
"10001": {Edge: []string{"edge3"}},
}, nil
}
return nil, fmt.Errorf("代理主机不符合预期: %s", m.Host)
}
mg.PortConfigsMock = func(m *testutil.MockGatewayClient, params []remote.PortConfigsReq) error {
mg.PortConfigsMock = func(m *testutil.MockGatewayClient, params []baiyin.PortConfigsReq) error {
switch {
case m.Host == proxy.Host:
for _, param := range params {
@@ -1099,7 +1099,7 @@ func Test_channelService_RemoveChannels(t *testing.T) {
}
return fmt.Errorf("代理主机不符合预期: %s", m.Host)
}
mc.DisconnectMock = func(param remote.CloudDisconnectReq) (int, error) {
mc.DisconnectMock = func(param baiyin.CloudDisconnectReq) (int, error) {
switch {
case param.Uuid == proxy.Name:
var edges = []string{"edge1", "edge2", "edge4"}
@@ -1168,21 +1168,21 @@ func Test_channelService_RemoveChannels(t *testing.T) {
}
// 模拟网关客户端的响应
mg.PortActiveMock = func(m *testutil.MockGatewayClient, param ...remote.PortActiveReq) (map[string]remote.PortData, error) {
mg.PortActiveMock = func(m *testutil.MockGatewayClient, param ...baiyin.PortActiveReq) (map[string]baiyin.PortData, error) {
switch {
case m.Host == proxy.Host:
return map[string]remote.PortData{
return map[string]baiyin.PortData{
"10001": {Edge: []string{"edge1", "edge4"}},
"10002": {Edge: []string{"edge2"}},
}, nil
case m.Host == proxy2.Host:
return map[string]remote.PortData{
return map[string]baiyin.PortData{
"10001": {Edge: []string{"edge3"}},
}, nil
}
return nil, fmt.Errorf("代理主机不符合预期: %s", m.Host)
}
mg.PortConfigsMock = func(m *testutil.MockGatewayClient, params []remote.PortConfigsReq) error {
mg.PortConfigsMock = func(m *testutil.MockGatewayClient, params []baiyin.PortConfigsReq) error {
switch {
case m.Host == proxy.Host:
for _, param := range params {
@@ -1213,7 +1213,7 @@ func Test_channelService_RemoveChannels(t *testing.T) {
}
return fmt.Errorf("代理主机不符合预期: %s", m.Host)
}
mc.DisconnectMock = func(param remote.CloudDisconnectReq) (int, error) {
mc.DisconnectMock = func(param baiyin.CloudDisconnectReq) (int, error) {
switch {
case param.Uuid == proxy.Name:
var edges = []string{"edge1", "edge2", "edge4"}