Esempio n. 1
0
        public void Test_AuditScope_SetTargetGetter()
        {
            var evs = new List <AuditEvent>();

            Audit.Core.Configuration.Setup()
            .Use(x => x
                 .OnInsertAndReplace(ev =>
            {
                evs.Add(ev);
            }))
            .WithCreationPolicy(EventCreationPolicy.InsertOnEnd);

            var obj = new SomeClass()
            {
                Id = 1, Name = "Test"
            };

            using (var scope = new AuditScopeFactory().Create("Test", () => new { ShouldNotUseThisObject = true }))
            {
                scope.SetTargetGetter(() => obj);
                obj.Id   = 2;
                obj.Name = "NewTest";
            }
            obj.Id   = 3;
            obj.Name = "X";

            Assert.AreEqual(1, evs.Count);
            Assert.AreEqual("SomeClass", evs[0].Target.Type);
            Assert.AreEqual(1, (evs[0].Target.Old as JObject).ToObject <SomeClass>().Id);
            Assert.AreEqual("Test", (evs[0].Target.Old as JObject).ToObject <SomeClass>().Name);
            Assert.AreEqual(2, (evs[0].Target.New as JObject).ToObject <SomeClass>().Id);
            Assert.AreEqual("NewTest", (evs[0].Target.New as JObject).ToObject <SomeClass>().Name);
        }
Esempio n. 2
0
        public void Test_AuditScope_SetTargetGetter_IsNull()
        {
            var evs = new List <AuditEvent>();

            Audit.Core.Configuration.Setup()
            .Use(x => x
                 .OnInsertAndReplace(ev =>
            {
                evs.Add(ev);
            }))
            .WithCreationPolicy(EventCreationPolicy.InsertOnEnd);


            using (var scope = new AuditScopeFactory().Create("Test", () => new { ShouldNotUseThisObject = true }))
            {
                scope.SetTargetGetter(null);
            }

            Assert.AreEqual(1, evs.Count);
            Assert.IsNull(evs[0].Target);
        }