Exemplo n.º 1
0
        public void TestInit()
        {
            // Arrange
            var currentUnitOfWorkProvider = new AsyncLocalCurrentUnitOfWorkProvider();

            // Assert
            Assert.Null(currentUnitOfWorkProvider.Current);
        }
Exemplo n.º 2
0
        public void TestSetCurrentUnitOfWork()
        {
            // Arrange
            var currentUnitOfWorkProvider = new AsyncLocalCurrentUnitOfWorkProvider();

            // Act
            var unitOfWork = GetNullUnitOfWork();

            currentUnitOfWorkProvider.Current = unitOfWork;

            // Assert
            Assert.Same(unitOfWork, currentUnitOfWorkProvider.Current);
        }
Exemplo n.º 3
0
        public async Task TestAsyncAction()
        {
            // Arrange
            var currentUnitOfWorkProvider = new AsyncLocalCurrentUnitOfWorkProvider();

            // Act
            var unitOfWork = GetNullUnitOfWork();

            currentUnitOfWorkProvider.Current = unitOfWork;
            await Task.Delay(500);

            // Assert
            Assert.Same(unitOfWork, currentUnitOfWorkProvider.Current);
        }
Exemplo n.º 4
0
        public void TestSetUnitOfWorkIsNullAndHasOuter()
        {
            // Arrange
            var currentUnitOfWorkProvider = new AsyncLocalCurrentUnitOfWorkProvider();

            // Act
            var unitOfWork1 = GetNullUnitOfWork();

            currentUnitOfWorkProvider.Current = unitOfWork1;

            var unitOfWork2 = GetNullUnitOfWork();

            currentUnitOfWorkProvider.Current = unitOfWork2;

            currentUnitOfWorkProvider.Current = null;

            // Assert
            Assert.Same(unitOfWork1, currentUnitOfWorkProvider.Current);
        }
Exemplo n.º 5
0
        public void TestSetSecondUnitOfWork()
        {
            // Arrange
            var currentUnitOfWorkProvider = new AsyncLocalCurrentUnitOfWorkProvider();


            // Act
            var unitOfWork1 = GetNullUnitOfWork();

            currentUnitOfWorkProvider.Current = unitOfWork1;

            var unitOfWork2 = GetNullUnitOfWork();

            currentUnitOfWorkProvider.Current = unitOfWork2;

            // Assert
            Assert.Same(unitOfWork2, currentUnitOfWorkProvider.Current);
            Assert.Same(unitOfWork1, currentUnitOfWorkProvider.Current.Outer);
        }
Exemplo n.º 6
0
 public BaseRepository(AsyncLocalCurrentUnitOfWorkProvider localCurrentUnitOfWorkProvider)
 {
     this._localCurrentUnitOfWorkProvider = localCurrentUnitOfWorkProvider;
 }