Refactor RDP proxy handling and update related tests
This commit is contained in:
@@ -28,6 +28,18 @@ type smokeNode struct {
|
||||
server *httptest.Server
|
||||
}
|
||||
|
||||
type smokeSyntheticTransport struct {
|
||||
peers map[string]string
|
||||
}
|
||||
|
||||
func (t smokeSyntheticTransport) SendSynthetic(ctx context.Context, nextNodeID string, envelope mesh.SyntheticEnvelope) (mesh.SyntheticEnvelope, error) {
|
||||
baseURL := t.peers[nextNodeID]
|
||||
if baseURL == "" {
|
||||
return mesh.SyntheticEnvelope{}, mesh.ErrSyntheticPeerUnavailable
|
||||
}
|
||||
return mesh.NewClient(baseURL).SendSynthetic(ctx, envelope)
|
||||
}
|
||||
|
||||
type smokeReport struct {
|
||||
Stage string `json:"stage"`
|
||||
ProductionForwarding bool `json:"production_forwarding"`
|
||||
@@ -433,7 +445,7 @@ func writeSmokeScopedConfig(local mesh.PeerIdentity, peers map[string]string, ro
|
||||
func newSmokeNode(local mesh.PeerIdentity) *smokeNode {
|
||||
node := &smokeNode{Local: local}
|
||||
node.server = httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||
mesh.Server{Local: node.Local, SyntheticRuntime: node.Runtime, FabricSessionEnabled: true}.Handler().ServeHTTP(w, r)
|
||||
mesh.Server{Local: node.Local, SyntheticRuntime: node.Runtime, FabricSessionEnabled: true, FabricSessionWebSocketEnabled: true}.Handler().ServeHTTP(w, r)
|
||||
}))
|
||||
node.URL = node.server.URL
|
||||
return node
|
||||
@@ -454,7 +466,7 @@ func smokeRuntime(local mesh.PeerIdentity, routes []mesh.SyntheticRoute, peers m
|
||||
mesh.SyntheticChannelFabricControl,
|
||||
mesh.SyntheticChannelRouteControl,
|
||||
},
|
||||
Transport: mesh.NewHTTPPeerTransport(peers),
|
||||
Transport: smokeSyntheticTransport{peers: peers},
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user