Пример #1
0
        public void EnlistParams_WhenAlreadyDisposed_ThrowsObjectDisposedException()
        {
            UnitOfWorkStub uow = new UnitOfWorkStub();

            uow.Dispose();

            Assert.Throws <ObjectDisposedException>(() => uow.Enlist(new object()));
        }
Пример #2
0
        public void IsEnlisted_WhenAlreadyDisposed_ThrowsObjectDisposedException()
        {
            UnitOfWorkStub uow = new UnitOfWorkStub();

            uow.Dispose();

            Assert.Throws <ObjectDisposedException>(() => uow.IsEnlisted(null));
        }
Пример #3
0
        public void Complete_WhenAlreadyDisposed_ThrowsObjectDisposedException()
        {
            UnitOfWorkStub uow = new UnitOfWorkStub();

            uow.Dispose();

            Assert.Throws <ObjectDisposedException>(uow.Complete);
        }
Пример #4
0
 public void CompletingTwiceIsNotPermitted()
 {
     using (UnitOfWorkStub uow = new UnitOfWorkStub())
     {
         uow.Complete();
         Assert.Throws <InvalidOperationException>(uow.Complete);
     }
 }
Пример #5
0
        public void EnlistItem()
        {
            object obj = new object();

            using (UnitOfWorkStub uow = new UnitOfWorkStub())
            {
                uow.Enlist(obj);
                Assert.IsTrue(uow.IsEnlisted(obj));
            }
        }
Пример #6
0
        public void EnlistIEnumerable_WhenAlreadyDisposed_ThrowsObjectDisposedException()
        {
            UnitOfWorkStub uow = new UnitOfWorkStub();

            uow.Dispose();

            IEnumerable <object> items = new[] { new object() };

            Assert.Throws <ObjectDisposedException>(() => uow.Enlist(items));
        }
Пример #7
0
        public void CurrentReturnsCorrectly()
        {
            Assert.IsNull(UnitOfWorkStub.Current);

            using (UnitOfWorkStub uow = new UnitOfWorkStub())
            {
                Assert.IsNotNull(UnitOfWorkStub.Current);
                Assert.IsTrue(object.ReferenceEquals(uow, UnitOfWorkStub.Current));
            }

            Assert.IsNull(UnitOfWorkStub.Current);
        }
Пример #8
0
        public void EnlistItemWhenNested()
        {
            object obj = new object();

            using (UnitOfWorkStub uow = new UnitOfWorkStub())
            {
                using (UnitOfWorkStub uow2 = new UnitOfWorkStub())
                {
                    uow2.Enlist(obj);
                    Assert.IsFalse(uow.IsEnlisted(obj));
                    Assert.IsTrue(uow2.IsEnlisted(obj));
                }

                Assert.IsFalse(uow.IsEnlisted(obj));
            }
        }
Пример #9
0
        public void ProcessCalled()
        {
            bool processCalled = false;

            object          obj     = new object();
            Action <object> process = item =>
            {
                Assert.IsTrue(object.ReferenceEquals(obj, item));
                processCalled = true;
            };

            using (UnitOfWorkStub uow = new UnitOfWorkStub(process))
            {
                uow.Enlist(obj);
                uow.Complete();
            }

            Assert.IsTrue(processCalled);
        }