public void Should_work_without_an_ioc_container()
        {
            // Arrange
            // Act
            using (var context = new CodeFirstTestDbContext())
                using (var contextAdapter = new ContextAdaptor <ICodeFirstTestDbContext>(context))
                    using (var unitOfWork = new UnitOfWork <ICodeFirstTestDbContext>(contextAdapter))
                    {
                        var roleRepository = new Repository <ICodeFirstTestDbContext, Role>(contextAdapter);
                        roleRepository.Insert(_role);
                        unitOfWork.SaveChanges();
                    }

            // Assert
            HasRole(_role.Name).Should().BeTrue();
            HasUser(_user.FirstName, _user.LastName).Should().BeTrue();
        }
        public void Should_work_without_an_ioc_container()
        {
            // Arrange
            // Act
            using (var context = new CodeFirstTestDbContext())
            using (var contextAdapter = new ContextAdaptor<ICodeFirstTestDbContext>(context))
            using (var unitOfWork = new UnitOfWork<ICodeFirstTestDbContext>(contextAdapter))
            {
                var roleRepository = new Repository<ICodeFirstTestDbContext, Role>(contextAdapter);
                roleRepository.Insert(_role);
                unitOfWork.SaveChanges();
            }

            // Assert
            HasRole(_role.Name).Should().BeTrue();
            HasUser(_user.FirstName, _user.LastName).Should().BeTrue();
        }
        public void Should_work_without_an_ioc_container()
        {
            // Arrange
            // Act
            using (var context = new TestDbEntities())
            using (var contextAdapter = new ContextAdaptor<ITestDbContext>(context))
            using (var unitOfWork = new UnitOfWork<ITestDbContext>(contextAdapter))
            {
                var accountRepository = new Repository<ITestDbContext, Account>(contextAdapter);
                accountRepository.Insert(_account);

                unitOfWork.SaveChanges();
            }

            // Assert
            HasAccount(_account.Name).Should().BeTrue();
            HasTransaction(_account.Name, _transaction.Description).Should().BeTrue();
        }
        public void Should_work_without_an_ioc_container()
        {
            // Arrange
            // Act
            using (var context = new TestDbEntities())
                using (var contextAdapter = new ContextAdaptor <ITestDbContext>(context))
                    using (var unitOfWork = new UnitOfWork <ITestDbContext>(contextAdapter))
                    {
                        var accountRepository = new Repository <ITestDbContext, Account>(contextAdapter);
                        accountRepository.Insert(_account);

                        unitOfWork.SaveChanges();
                    }

            // Assert
            HasAccount(_account.Name).Should().BeTrue();
            HasTransaction(_account.Name, _transaction.Description).Should().BeTrue();
        }