11import { Uri } from 'monaco-editor'
2- import { AbstractMessageReader , AbstractMessageWriter , createMessageConnection , DataCallback , Disposable , Message , MessageConnection , MessageReader , MessageWriter , NotificationHandler , RequestHandler , ServerCapabilities , TextDocumentSyncKind } from 'vscode-languageserver-protocol'
2+ import { AbstractMessageReader , AbstractMessageWriter , createMessageConnection , DataCallback , Disposable , Message , MessageReader , MessageWriter , NotificationHandler , RequestHandler } from 'vscode-languageserver-protocol'
33import {
44 createConnection ,
55 WatchDog ,
66 _Connection ,
77 _
88} from 'vscode-languageserver/lib/common/api'
99import { monaco } from '@codingame/monaco-editor-wrapper'
10+ import { MessageTransports } from 'monaco-languageclient'
1011import { getFile , updateFile } from '../customRequests'
1112import { Infrastructure , LanguageClientId , LanguageClientManager , LanguageClientOptions , TextDocument , TextDocumentSaveReason } from '../'
1213
@@ -54,13 +55,6 @@ function createPipedReaderWriter (): [MessageReader, MessageWriter] {
5455 return [ reader , writer ]
5556}
5657
57- function createDuplexConnection ( ) : [ MessageConnection , MessageConnection ] {
58- const [ r1 , w1 ] = createPipedReaderWriter ( )
59- const [ r2 , w2 ] = createPipedReaderWriter ( )
60-
61- return [ createMessageConnection ( r1 , w2 ) , createMessageConnection ( r2 , w1 ) ]
62- }
63-
6458export interface DeferredPromise < ValueType > {
6559 promise : Promise < ValueType >
6660 resolve ( value ?: ValueType | PromiseLike < ValueType > ) : void
@@ -153,8 +147,11 @@ export class TestInfrastructure implements Infrastructure {
153147 }
154148 }
155149
156- async openConnection ( ) : Promise < MessageConnection > {
157- const [ c1 , c2 ] = createDuplexConnection ( )
150+ async openConnection ( ) : Promise < MessageTransports > {
151+ const [ r1 , w1 ] = createPipedReaderWriter ( )
152+ const [ r2 , w2 ] = createPipedReaderWriter ( )
153+
154+ const c2 = createMessageConnection ( r2 , w1 )
158155
159156 const watchDog : WatchDog = {
160157 shutdownReceived : false ,
@@ -165,6 +162,9 @@ export class TestInfrastructure implements Infrastructure {
165162 this . connectionDeferred . resolve ( clientConnection )
166163 c2 . listen ( )
167164
168- return c1
165+ return {
166+ reader : r1 ,
167+ writer : w2
168+ }
169169 }
170170}
0 commit comments