@@ -49,13 +49,19 @@ class MockDataChannel {
4949 this . _listeners = new Map ( )
5050 }
5151
52- /** @param {string } type 事件名 @param {Function} handler 处理器 */
52+ /**
53+ * @param {string } type 事件名
54+ * @param {Function } handler 处理器
55+ */
5356 addEventListener ( type , handler ) {
5457 if ( ! this . _listeners . has ( type ) ) this . _listeners . set ( type , new Set ( ) )
5558 this . _listeners . get ( type ) . add ( handler )
5659 }
5760
58- /** @param {string } type 事件名 @param {Function} handler 处理器 */
61+ /**
62+ * @param {string } type 事件名
63+ * @param {Function } handler 处理器
64+ */
5965 removeEventListener ( type , handler ) {
6066 this . _listeners . get ( type ) ?. delete ( handler )
6167 }
@@ -65,6 +71,7 @@ class MockDataChannel {
6571 this . sent . push ( typeof data === 'string' ? data : Buffer . from ( data ) . toString ( 'utf8' ) )
6672 }
6773
74+ /** 关闭通道。 */
6875 close ( ) {
6976 this . readyState = 'closed'
7077 }
@@ -77,11 +84,14 @@ class MockDataChannel {
7784
7885/**
7986 * answerer 侧最小 RTCPeerConnection mock:收到 offer 后就绪双通道,答复 answer。
87+ * @returns {{ RTCPeerConnection: typeof MockPC, getInstance: () => MockPC | null } } rtc 工厂与实例取回器
8088 */
8189function createAnswererRtc ( ) {
8290 /** @type {MockPC | null } */
8391 let instance = null
92+ /** 最小 RTCPeerConnection mock。 */
8493 class MockPC {
94+ /** 初始化为已连接的稳定状态。 */
8595 constructor ( ) {
8696 this . localDescription = null
8797 this . remoteDescription = null
@@ -121,10 +131,16 @@ function createAnswererRtc() {
121131 else this . signalingState = 'stable'
122132 }
123133
124- async addIceCandidate ( ) { /* trickle 关闭时不经此路径 */ }
134+ /** trickle 关闭时不经此路径。 */
135+ async addIceCandidate ( ) { }
136+ /** 标记连接关闭。 */
125137 async close ( ) { this . connectionState = 'closed' }
126138 }
127- return { RTCPeerConnection : MockPC , getInstance : ( ) => instance }
139+ return {
140+ RTCPeerConnection : MockPC ,
141+ /** @returns {MockPC | null } 最近创建的 mock 实例 */
142+ getInstance : ( ) => instance ,
143+ }
128144}
129145
130146Deno . test ( {
@@ -145,7 +161,10 @@ Deno.test({
145161 const signal = {
146162 /** @param {unknown } _message 出站信令(answer/ice,测试中忽略) */
147163 send ( _message ) { } ,
148- /** @param {(message: unknown) => void } handler 入站信令处理器 @returns {() => void} */
164+ /**
165+ * @param {(message: unknown) => void } handler 入站信令处理器
166+ * @returns {() => void } 取消订阅
167+ */
149168 onRemote ( handler ) { signalHandler = handler ; return ( ) => { signalHandler = null } } ,
150169 }
151170
0 commit comments