Beispiel #1
0
        public void DeletedSoftDeleteEntitiesAreNotReallyDeleted()
        {
            int id;

            IDeleteEventListener[] defaultListeners = cfg.EventListeners.DeleteEventListeners;

            cfg.EventListeners.DeleteEventListeners = new IDeleteEventListener[] { new SoftDeleteEventListener() };
            using (ISession session = OpenSession())
            {
                using (ITransaction transaction = session.BeginTransaction())
                {
                    SoftDeleter sd = new SoftDeleter();
                    sd.DeleteDate = DateTime.Parse("1/1/07 1:00:00 pm");
                    session.Save(sd);
                    id = sd.Id;
                    transaction.Commit();
                }
                session.Clear();
                using (ITransaction transaction = session.BeginTransaction())
                {
                    SoftDeleter sd = session.Get <SoftDeleter>(id);
                    session.Delete(sd);
                    transaction.Commit();
                }
                session.Clear();
                using (ITransaction transaction = session.BeginTransaction())
                {
                    SoftDeleter sd = session.Get <SoftDeleter>(id);
                    Assert.IsTrue(sd.Deleted);
                    Assert.IsNotNull(sd.DeleteDate);
                    Assert.AreNotEqual(DateTime.Parse("1/1/07 1:00:00 pm"), sd.DeleteDate.Value);
                    transaction.Commit();
                }
                session.Clear();
            }

            cfg.EventListeners.DeleteEventListeners = defaultListeners;
            using (ISession session = OpenSession())
            {
                using (ITransaction transaction = session.BeginTransaction())
                {
                    SoftDeleter sd = session.Get <SoftDeleter>(id);
                    session.Delete(sd);
                    // session.Flush();
                    transaction.Commit();
                }
            }
        }
        public void DeletedSoftDeleteEntitiesAreNotReallyDeleted()
        {
            int id;
            IDeleteEventListener[] defaultListeners = cfg.EventListeners.DeleteEventListeners;

            cfg.EventListeners.DeleteEventListeners = new IDeleteEventListener[] { new SoftDeleteEventListener() };
            using (ISession session = OpenSession())
            {
                using (ITransaction transaction = session.BeginTransaction())
                {
                    SoftDeleter sd = new SoftDeleter();
                    sd.DeleteDate = DateTime.Parse("1/1/07 1:00:00 pm");
                    session.Save(sd);
                    id = sd.Id;
                    transaction.Commit();
                }
                session.Clear();
                using (ITransaction transaction = session.BeginTransaction())
                {
                    SoftDeleter sd = session.Get<SoftDeleter>(id);
                    session.Delete(sd);
                    transaction.Commit();
                }
                session.Clear();
                using (ITransaction transaction = session.BeginTransaction())
                {
                    SoftDeleter sd = session.Get<SoftDeleter>(id);
                    Assert.IsTrue(sd.Deleted);
                    Assert.IsNotNull(sd.DeleteDate);
                    Assert.AreNotEqual(DateTime.Parse("1/1/07 1:00:00 pm"), sd.DeleteDate.Value);
                    transaction.Commit();
                }
                session.Clear();
            }

            cfg.EventListeners.DeleteEventListeners = defaultListeners;
            using (ISession session = OpenSession())
            {
                using (ITransaction transaction = session.BeginTransaction())
                {
                    SoftDeleter sd = session.Get<SoftDeleter>(id);
                    session.Delete(sd);
                   // session.Flush();
                    transaction.Commit();
                }
            }
        }