public void handles_audit_message_with_entities_and_properties() { //setup var currentEventCount = CountTotalAuditEvents(); var currentEntityCount = CountTotalAuditEntities(); var currentPropertyCount = CountTotalAuditEntityProperties(); var subject = new AuditMessageHandler(); subject.ObjectContextFactory = _mockobjectContextFactory.Object; subject.Log = _mockLog.Object; var auditEntity = CreateAuditEntity(); auditEntity.AuditEntityProperties = new Collection<AuditEntityProperty>(); var auditEntityProperty = CreateAuditEntityProperty(); auditEntity.AuditEntityProperties.Add(auditEntityProperty); auditEntityProperty = CreateAuditEntityProperty(); auditEntity.AuditEntityProperties.Add(auditEntityProperty); auditEntityProperty = CreateAuditEntityProperty(); auditEntity.AuditEntityProperties.Add(auditEntityProperty); var auditEvent = CreateAuditEvent(); auditEvent.AuditEntities = new Collection<AuditEntity>(); auditEvent.AuditEntities.Add(auditEntity); auditEntity = CreateAuditEntity(); auditEntity.AuditEntityProperties = new Collection<AuditEntityProperty>(); auditEntityProperty = CreateAuditEntityProperty(); auditEntity.AuditEntityProperties.Add(auditEntityProperty); auditEntityProperty = CreateAuditEntityProperty(); auditEntity.AuditEntityProperties.Add(auditEntityProperty); auditEntityProperty = CreateAuditEntityProperty(); auditEntity.AuditEntityProperties.Add(auditEntityProperty); auditEvent.AuditEntities.Add(auditEntity); var message = new Mock<IAuditMessage>(); message.SetupProperty(m => m.AuditEvent, auditEvent); //act subject.Handle(message.Object); //assert Assert.AreEqual(currentEventCount + 1, CountTotalAuditEvents()); Assert.AreEqual(currentEntityCount + 2, CountTotalAuditEntities()); Assert.AreEqual(currentPropertyCount + 6, CountTotalAuditEntityProperties()); _mockLog.VerifyNoFatalExceptionsLogged(); }
public void logs_exception_when_message_has_null_audit_event() { //setup var subject = new AuditMessageHandler(); subject.ObjectContextFactory = _mockobjectContextFactory.Object; subject.Log = _mockLog.Object; var message = new Mock<IAuditMessage>(); message.SetupProperty(m => m.AuditEvent, null); //act subject.Handle(message.Object); //assert _mockLog.VerifyFatalExceptionLogged(); }
public void handles_simple_audit_message() { //setup var currentCount = CountTotalAuditEvents(); var subject = new AuditMessageHandler(); subject.ObjectContextFactory = _mockobjectContextFactory.Object; subject.Log = _mockLog.Object; var auditEvent = CreateAuditEvent(); var message = new Mock<IAuditMessage>(); message.SetupProperty(m => m.AuditEvent, auditEvent); //act subject.Handle(message.Object); //assert _mockLog.VerifyNoFatalExceptionsLogged(); Assert.AreEqual(currentCount + 1, CountTotalAuditEvents()); }