public async Task SavesMessageAndEvent(bool eventIsActive) { var entity = new AddStatusEventManualChangeEntity("path", ComponentStatus.Up, "message", eventIsActive) { Timestamp = new DateTimeOffset(2018, 8, 21, 0, 0, 0, TimeSpan.Zero) }; var time = entity.Timestamp.UtcDateTime; var eventRowKey = EventEntity.GetRowKey(entity.EventAffectedComponentPath, time); _table.Setup(x => x.InsertAsync( It.Is <MessageEntity>(messageEntity => messageEntity.PartitionKey == MessageEntity.DefaultPartitionKey && messageEntity.RowKey == MessageEntity.GetRowKey(eventRowKey, time) && messageEntity.ParentRowKey == eventRowKey && messageEntity.Time == time && messageEntity.Contents == entity.MessageContents ))) .Returns(Task.CompletedTask) .Verifiable(); _table.Setup(x => x.InsertAsync( It.Is <EventEntity>(eventEntity => eventEntity.PartitionKey == EventEntity.DefaultPartitionKey && eventEntity.RowKey == eventRowKey && eventEntity.AffectedComponentPath == entity.EventAffectedComponentPath && eventEntity.AffectedComponentStatus == entity.EventAffectedComponentStatus && eventEntity.StartTime == time && eventEntity.EndTime == (entity.EventIsActive ? (DateTime?)null : time) ))) .Returns(Task.CompletedTask) .Verifiable(); await _handler.Handle(entity); _table.Verify(); }
public Task <ActionResult> CreateNewEvent(CreateStatusEvent model) { var entity = new AddStatusEventManualChangeEntity(model.AffectedComponentPath, model.AffectedComponentStatus, model.Message, model.IsActive); return(RunUpdateStatusTask(entity)); }