Beispiel #1
0
        public void UnitOfWorkOpensSessionFirst()
        {
            var sessionMock = new Mock<ISession>();

            var target = new UnitOfWork(sessionMock.Object);
            Assert.IsNotNull(target.Session, "Session not started");
            sessionMock.Verify<ITransaction>(x => x.BeginTransaction(), Times.Never(), "Transaction should not be started yet");
        }
Beispiel #2
0
        public void UnitOfWorkCanStartTransaction()
        {
            var transactionMock = new Mock<ITransaction>();

            var sessionMock = new Mock<ISession>();
            sessionMock.Setup(x => x.BeginTransaction()).Returns(transactionMock.Object);

            var target = new UnitOfWork(sessionMock.Object);
            using (target.Start())
            {
                sessionMock.Verify(x => x.BeginTransaction(), Times.Once(), "Should have started transaction using session");
            }
        }