Пример #1
0
        public void AuditHelper_PrepareForUpdate_AddAudity_WithoutCreate()
        {
            var wc     = new Mock <IWorkContext>();
            var userId = 100;

            wc.Setup(w => w.CurrentUserId)
            .Returns(userId)
            .Callback(() => Thread.Sleep(50));

            var createdOn       = DateTime.Now.AddDays(-10);
            var createdByUserId = 110;
            var aHelper         = new AuditHelper(wc.Object);
            var audit           = new DummyFullAudit
            {
                CreatedOnUtc    = createdOn,
                CreatedByUserId = createdByUserId
            };

            aHelper.PrepareForUpdateAudity(audit);
            audit.CreatedByUserId.ShouldBe(createdByUserId);
            audit.CreatedOnUtc.ShouldBe(createdOn);

            audit.UpdatedByUserId.ShouldBe(userId);
            audit.UpdatedOnUtc.HasValue.ShouldBeTrue();
            audit.UpdatedOnUtc.Value.ShouldBeGreaterThan(audit.CreatedOnUtc);
            audit.UpdatedOnUtc.HasValue.ShouldBeTrue();
            audit.UpdatedOnUtc.Value.ShouldBeLessThanOrEqualTo(DateTime.Now);
        }
Пример #2
0
        public void AuditHelper_PrepareForDelete_AddAudity_DeletedByAssignedToIllegalUser()
        {
            var wc     = new Mock <IWorkContext>();
            var userId = 100;

            wc.Setup(w => w.CurrentUserId)
            .Returns(userId)
            .Callback(() => Thread.Sleep(50));

            var aHelper = new AuditHelper(wc.Object);
            var audit1  = new DummyFullAudit();

            audit1.DeletedByUserId = 0;
            aHelper.PrepareForDeleteAudity(audit1);

            audit1.DeletedByUserId.ShouldBe(userId);
            audit1.DeletedOnUtc.ShouldNotBeNull();
            audit1.DeletedOnUtc.Value.ShouldBeLessThan(DateTime.Now);

            var audit2 = new DummyFullAudit();

            audit2.DeletedByUserId = -123;
            aHelper.PrepareForDeleteAudity(audit2);

            audit2.DeletedByUserId.ShouldBe(userId);
            audit2.DeletedOnUtc.ShouldNotBeNull();
            audit2.DeletedOnUtc.Value.ShouldBeLessThan(DateTime.Now);
        }
Пример #3
0
        public void AuditHelper_PrepareForCreate_AddAudity()
        {
            var wc     = new Mock <IWorkContext>();
            var userId = 100;

            wc.Setup(w => w.CurrentUserId)
            .Returns(userId);
            var aHelper = new AuditHelper(wc.Object);
            var audit   = new DummyFullAudit();

            aHelper.PrepareForCreateAudity(audit)
            ;
            audit.CreatedByUserId.ShouldBe(userId);
            audit.CreatedOnUtc.ShouldNotBe(default(DateTime));
            audit.CreatedOnUtc.ShouldBeLessThanOrEqualTo(DateTime.Now);
        }
Пример #4
0
        public void AuditHelper_PrepareForCreate_Thrwos()
        {
            var aHelper = new AuditHelper(null);
            var audit   = new DummyFullAudit
            {
                CreatedOnUtc = DateTime.Now.AddDays(10)
            };

            Should.Throw <InvalidOperationException>(() => aHelper.PrepareForCreateAudity(audit));

            audit = new DummyFullAudit
            {
                CreatedByUserId = 100
            };
            Should.Throw <InvalidOperationException>(() => aHelper.PrepareForCreateAudity(audit));
        }
Пример #5
0
        public void AuditHelper_PrepareForUpdate_AddAudity_WithCreate()
        {
            var wc     = new Mock <IWorkContext>();
            var userId = 100;

            wc.Setup(w => w.CurrentUserId)
            .Returns(userId);

            var aHelper = new AuditHelper(wc.Object);
            var audit   = new DummyFullAudit();

            aHelper.PrepareForUpdateAudity(audit);
            audit.CreatedByUserId.ShouldBe(userId);
            audit.CreatedOnUtc.ShouldNotBe(default(DateTime));
            Thread.Sleep(5);
            audit.CreatedOnUtc.ShouldBeLessThan(DateTime.Now);

            audit.UpdatedByUserId.ShouldBe(userId);
            audit.UpdatedOnUtc.HasValue.ShouldBeTrue();
            audit.UpdatedOnUtc.Value.ShouldBeGreaterThanOrEqualTo(audit.CreatedOnUtc);
            audit.UpdatedOnUtc.HasValue.ShouldBeTrue();
            audit.UpdatedOnUtc.Value.ShouldBeLessThanOrEqualTo(DateTime.Now);
        }