File tree Expand file tree Collapse file tree 2 files changed +34
-0
lines changed 
com.unity.netcode.gameobjects/Tests/Runtime/Messaging Expand file tree Collapse file tree 2 files changed +34
-0
lines changed Original file line number Diff line number Diff line change @@ -279,5 +279,38 @@ public unsafe void ErrorMessageIsPrintedWhenAttemptingToSendNamedMessageWithTooB
279279                Assert . IsTrue ( message . Contains ( $ "Given message size ({ msgSize }  bytes) is greater than the maximum") ,  $ "Unexpected exception: { message } ") ; 
280280            } 
281281        } 
282+ 
283+         [ Test ] 
284+         public  void  NamedMessageHandlerIsUnregisteredWithoutException ( ) 
285+         { 
286+             var  messageName  =  Guid . NewGuid ( ) . ToString ( ) ; 
287+             const  int  numMessagesToSend  =  3 ; 
288+             const  int  expectedMessageHandlerCallCount  =  1 ; 
289+ 
290+             var  messageHandlerCalled  =  0 ; 
291+             m_ServerNetworkManager . CustomMessagingManager . RegisterNamedMessageHandler ( 
292+                 messageName , 
293+                 ( _ ,  _ )  => 
294+                 { 
295+                     messageHandlerCalled ++ ; 
296+                     m_ServerNetworkManager . CustomMessagingManager . UnregisterNamedMessageHandler ( messageName ) ; 
297+                 } ) ; 
298+ 
299+             var  messageContent  =  new  ForceNetworkSerializeByMemcpy < Guid > ( Guid . NewGuid ( ) ) ; 
300+             var  writer  =  new  FastBufferWriter ( 1300 ,  Allocator . Temp ) ; 
301+             using  ( writer ) 
302+             { 
303+                 writer . WriteValueSafe ( messageContent ) ; 
304+                 for  ( var  i  =  0 ;  i  <  numMessagesToSend ;  i ++ ) 
305+                 { 
306+                     m_ServerNetworkManager . CustomMessagingManager . SendNamedMessage ( 
307+                         messageName , 
308+                         m_ServerNetworkManager . LocalClientId , 
309+                         writer ) ; 
310+                 } 
311+             } 
312+ 
313+             Assert . AreEqual ( expectedMessageHandlerCallCount ,  messageHandlerCalled ) ; 
314+         } 
282315    } 
283316} 
Original file line number Diff line number Diff line change 860860          " Unity.Netcode.RuntimeTests.NamedMessageTests: IEnumerator WhenSendingNamedMessageToAll_AllClientsReceiveIt(): undocumented"  ,
861861          " Unity.Netcode.RuntimeTests.NamedMessageTests: void WhenSendingNamedMessageToNullClientList_ArgumentNullExceptionIsThrown(): undocumented"  ,
862862          " Unity.Netcode.RuntimeTests.NamedMessageTests: void ErrorMessageIsPrintedWhenAttemptingToSendNamedMessageWithTooBigBuffer(): undocumented"  ,
863+           " Unity.Netcode.RuntimeTests.NamedMessageTests: void NamedMessageHandlerIsUnregisteredWithoutException(): undocumented"  ,
863864          " Unity.Netcode.RuntimeTests.UnnamedMessageTests: undocumented"  ,
864865          " Unity.Netcode.RuntimeTests.UnnamedMessageTests: NumberOfClients: undocumented"  ,
865866          " Unity.Netcode.RuntimeTests.UnnamedMessageTests: IEnumerator UnnamedMessageIsReceivedOnClientWithContent(): undocumented"  ,
    
 
   
 
     
   
   
          
     
  
    
     
 
    
      
     
 
     
    You can’t perform that action at this time.
  
 
    
  
     
    
      
        
     
 
       
      
     
   
 
    
    
  
 
  
 
     
    
0 commit comments