public async Task CancelTest() { CancellationToken cancellationToken = new CancellationToken(); var postModel = new PostModel() { AppId = "appId" }; { //一开始就取消 var messageHandler = new CancelMessageHandlers(XDocument.Parse(xmlText.FormatWith(SystemTime.NowTicks, DateTimeHelper.GetUnixDateTime(SystemTime.Now))), postModel); messageHandler.CancelExcute = true; //缺少异步方法重写的时候,使用同步方法 messageHandler.DefaultMessageHandlerAsyncEvent = NeuChar.MessageHandlers.DefaultMessageHandlerAsyncEvent.SelfSynicMethod; await messageHandler.ExecuteAsync(cancellationToken); Assert.AreEqual(null, messageHandler.RunStep); } { //OnExecuting中途取消 var messageHandler = new CancelMessageHandlers(XDocument.Parse(xmlText.FormatWith(SystemTime.NowTicks, DateTimeHelper.GetUnixDateTime(SystemTime.Now))), postModel); await messageHandler.ExecuteAsync(cancellationToken); Assert.AreEqual("OnExecuting", messageHandler.RunStep); Assert.IsNotNull(messageHandler.RequestDocument); Console.WriteLine(messageHandler.RequestDocument.ToString()); Console.WriteLine(messageHandler.RequestMessage.ToJson(true)); Assert.IsNull(messageHandler.ResponseMessage); } }
public void CancelTest() { { //一开始就取消 var messageHandler = new CancelMessageHandlers(XDocument.Parse(xmlText)); messageHandler.CancelExcute = true; messageHandler.Execute(); Assert.AreEqual(null, messageHandler.RunStep); } { //OnExecuting中途取消 var messageHandler = new CancelMessageHandlers(XDocument.Parse(xmlText)); messageHandler.Execute(); Assert.AreEqual("OnExecuting", messageHandler.RunStep); } }
public void CancelTest() { var postModel = new PostModel() { AppId = "appId" }; { //一开始就取消 var messageHandler = new CancelMessageHandlers(XDocument.Parse(xmlText), postModel); messageHandler.CancelExcute = true; messageHandler.Execute(); Assert.AreEqual(null, messageHandler.RunStep); } { //OnExecuting中途取消 var messageHandler = new CancelMessageHandlers(XDocument.Parse(xmlText), postModel); messageHandler.Execute(); Assert.AreEqual("OnExecuting", messageHandler.RunStep); } }