コード例 #1
0
        public void WithChanges_WhenChangesAreValid_SetsBeforeAndAfterJson()
        {
            var before = "before_changes";
            var after  = "after_changes";
            AuditedOperationTypeEnum type = AuditedOperationTypeEnum.Update;
            var model = new ModelToAudit {
                Id = Guid.NewGuid().ToString()
            };

            var mockChanges = new Mock <IChangeDetectionService>();

            mockChanges
            .Setup(c => c.GetChangeType(It.IsAny <EntityEntry>()))
            .Returns(type);

            mockChanges
            .Setup(c => c.SerializeEntityChanges(It.IsAny <AuditedOperationTypeEnum>(), It.IsAny <EntityEntry>()))
            .Returns((before, after));


            AuditService <FakeContext> auditService = GenerateAuditService(mockChanges.Object);
            AuditEntryModel            entry        = auditService.GenerateEntry <AuditEntryModel, ModelToAudit>(model);

            Assert.AreEqual(type, entry.Type);
            Assert.AreEqual(before, entry.EntityBeforeJson);
            Assert.AreEqual(after, entry.EntityAfterJson);
        }
コード例 #2
0
        public void GenerateEntry_WithAuditedOn_SetsAuditedOn()
        {
            var auditedOn = new DateTime(2000, 1, 1);
            AuditService <FakeContext> auditService = GenerateAuditService();
            AuditEntryModel            newEntry     = auditService.GenerateEntry <AuditEntryModel, ModelToAudit>(new ModelToAudit(), auditedOn);

            Assert.AreEqual(auditedOn, newEntry.AuditedOn);
        }
コード例 #3
0
        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);
        }
コード例 #4
0
        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);
        }
コード例 #5
0
        public void GenerateEntry_WhenIdIsNotDbGenerated_SetsEntityIdOnSave()
        {
            var model = new ModelToAudit();

            Context.Add(model);

            AuditService <FakeContext> auditService = GenerateAuditService();
            AuditEntryModel            newEntry     = auditService.GenerateEntry <AuditEntryModel, ModelToAudit>(model);

            model.Audits = new List <AuditEntryModel>
            {
                newEntry
            };

            Context.SaveChanges();

            Assert.AreEqual(model.Id, newEntry.EntityId);
        }