public void Release_ValidMessageContent_ShouldThrowExcptionIfContentIsReleasedMoreThanOnce() { // Arrange var mcp = new MessageContextProvider(); var message = new Mock <IMessage <object> >(); message.Setup(mc => mc.Content).Returns(new object()); mcp.StoreMessageContext(message.Object); // Act mcp.ReleaseMessageContext(message.Object); Assert.Throws <MessageContextException>(() => mcp.ReleaseMessageContext(message.Object)); }
public Task CreateActivities(int number) { var tasks = new Task[number]; for (int i = 0; i < number; i++) { AccountCreatedMessage message = new AccountCreatedMessage(i, $"User {i}", "UserRef {i}"); var messageContext = new FakeMessage <AccountCreatedMessage>(message, Guid.NewGuid().ToString()); MessageContextProvider.StoreMessageContext(messageContext); tasks[i] = ActivitySaver .SaveActivity(message, ActivityType.AccountCreated) .ContinueWith(t => CreatedActivities.Add(t.Result)) .ContinueWith(t => MessageContextProvider.ReleaseMessageContext(messageContext)); } return(Task.WhenAll(tasks) .ContinueWith(task => { Assert.IsTrue(tasks.All(t => t.IsCompleted), "At least one creation task did not complete"); var firstFaulted = tasks.FirstOrDefault(t => t.IsFaulted); if (firstFaulted != null) { Assert.Fail($"At least one creation task faulted.{firstFaulted.Exception.Flatten().Message}"); } Assert.AreEqual(number, CreatedActivities.Count, "Incorrect number of accounts created"); })); }
public void Release_NullMessage_ShouldIgnoreNulls() { var mcp = new MessageContextProvider(); mcp.ReleaseMessageContext((IMessage <object>)null); Assert.Pass("Did not get an exception thrown"); }
public void Release_NullMessageContent_ShouldIgnoreNulls() { // Arrange var mcp = new MessageContextProvider(); var message = new Mock <IMessage <object> >(); message.Setup(mc => mc.Content).Returns(null); // Act mcp.ReleaseMessageContext(message.Object); Assert.Pass("Did not get an exception thrown"); }