public void WithDescription_WhenDescriptionIsNotNull_SetsDescription() { var description = "Sample"; AuditService <FakeContext> auditService = GenerateAuditService(); FluentAudit <FakeContext, AuditEntryModel, ModelToAudit> fluent = auditService.GenerateEntry <AuditEntryModel, ModelToAudit>(new ModelToAudit()); AuditEntryModel entry = fluent.WithDescription(description); Assert.AreEqual(description, entry.Description); }
public void WithUserId_WhenUserIdIsNotNull_SetsUserId() { var userId = "Sample"; AuditService <FakeContext> auditService = GenerateAuditService(); FluentAudit <FakeContext, AuditEntryModel, ModelToAudit> fluent = auditService.GenerateEntry <AuditEntryModel, ModelToAudit>(new ModelToAudit()); AuditEntryModel entry = fluent.WithUserId(userId); Assert.AreEqual(userId, entry.UserId); }
public FluentAudit <TContext, TAuditEntry, TEntity> GenerateEntry <TAuditEntry, TEntity>(TEntity model, DateTime auditedOn) where TEntity : class where TAuditEntry : AuditEntryDataModel <TEntity>, new() { var entity = Context.Entry(model); var(type, beforeJson, afterJson) = ChangeDetectionService.SerializeEntityChanges(entity); var entry = new TAuditEntry { AuditedOn = auditedOn, Entity = model, Type = type, EntityBeforeJson = beforeJson, EntityAfterJson = afterJson }; Context.Add(entry); var fluent = new FluentAudit <TContext, TAuditEntry, TEntity>(entry); return(fluent); }