public async Task ResponseMap_Shutdown_SubsequentAddHasErrorResult() { var respMap = new ResponseMap(); respMap.Shutdown(); Task<IMessage> responseTask = respMap.Add(1); Assert.AreEqual(0, respMap.OutstandingCount); IMessage response = await responseTask; Assert.IsTrue(response.IsError); Error err = response.Error.Deserialize(); Assert.AreEqual((int)ErrorCode.CONNECTION_SHUT_DOWN, err.error_code); }
private State DoDisconnect() { logger.Site().Debug("{0} Shutting down.", this); networkStream.Shutdown(); if (connectionType == ConnectionType.Server) { parentListener.InformDisconnected(this, errorDetails); } responseMap.Shutdown(); return(State.Disconnected); }
public async Task ResponseMap_Shutdown_PendingResponsesCompletedWithError() { var respMap = new ResponseMap(); Task<IMessage> responseTask = respMap.Add(1); respMap.Shutdown(); respMap.Complete(1, anyResponse); Assert.AreEqual(0, respMap.OutstandingCount); var response = await responseTask; Assert.IsTrue(response.IsError); Error err = response.Error.Deserialize(); Assert.AreEqual((int)ErrorCode.CONNECTION_SHUT_DOWN, err.error_code); }