1
- /* Copyright 2013-2016 MongoDB Inc.
1
+ /* Copyright 2013-2017 MongoDB Inc.
2
2
*
3
3
* Licensed under the Apache License, Version 2.0 (the "License");
4
4
* you may not use this file except in compliance with the License.
@@ -391,9 +391,7 @@ public void ReceiveMessage_should_handle_out_of_order_replies(
391
391
}
392
392
else
393
393
{
394
- var receivedTask10IsRunning = 0 ;
395
- receivedTask10 = Task. Run( ( ) => { Interlocked . Exchange ( ref receivedTask10IsRunning , 1 ) ; return _subject . ReceiveMessage ( 10 , encoderSelector , _messageEncoderSettings , CancellationToken . None ) ; } ) ;
396
- SpinWait. SpinUntil ( ( ) => Interlocked . CompareExchange ( ref receivedTask10IsRunning , 0 , 0 ) == 1 , TimeSpan . FromSeconds ( 5 ) ) . Should ( ) . BeTrue ( ) ;
394
+ receivedTask10 = Task . Run ( ( ) => _subject . ReceiveMessage ( 10 , encoderSelector , _messageEncoderSettings , CancellationToken . None ) ) ;
397
395
}
398
396
399
397
Task < ResponseMessage > receivedTask11 ;
@@ -403,11 +401,11 @@ public void ReceiveMessage_should_handle_out_of_order_replies(
403
401
}
404
402
else
405
403
{
406
- var receivedTask11IsRunning = 0 ;
407
- receivedTask11 = Task. Run( ( ) => { Interlocked . Exchange ( ref receivedTask11IsRunning , 1 ) ; return _subject . ReceiveMessage ( 11 , encoderSelector , _messageEncoderSettings , CancellationToken . None ) ; } ) ;
408
- SpinWait. SpinUntil ( ( ) => Interlocked . CompareExchange ( ref receivedTask11IsRunning , 0 , 0 ) == 1 , TimeSpan . FromSeconds ( 5 ) ) . Should ( ) . BeTrue ( ) ;
404
+ receivedTask11 = Task . Run ( ( ) => _subject . ReceiveMessage ( 11 , encoderSelector , _messageEncoderSettings , CancellationToken . None ) ) ;
409
405
}
410
406
407
+ SpinWait . SpinUntil ( ( ) => _capturedEvents . Count >= 2 , TimeSpan . FromSeconds ( 5 ) ) . Should ( ) . BeTrue ( ) ;
408
+
411
409
var messageToReceive10 = MessageHelper. BuildReply< BsonDocument> ( new BsonDocument ( "_id" , 10 ) , BsonDocumentSerializer . Instance , responseTo : 10 ) ;
412
410
var messageToReceive11 = MessageHelper. BuildReply< BsonDocument> ( new BsonDocument ( "_id" , 11 ) , BsonDocumentSerializer . Instance , responseTo : 11 ) ;
413
411
MessageHelper. WriteResponsesToStream ( stream , new [ ] { messageToReceive11 , messageToReceive10 } ) ; // out of order
0 commit comments