//[Ignore("Problem with generic in setup")]
        public void Update_WithChangedEntity_PerformsAContextUpdate()
        {
            //Arrange
            var testArticles     = ArticleList.GetDefaultList();
            var articleDbSetMock = testArticles.AsQueryable().BuildMockDbSet();
            var dataContextMock  = new Mock <CommandDbContext>();

            dataContextMock.Setup(m => m.Articles).Returns(articleDbSetMock.Object);
            var articleRepository = new ArticleRepository(dataContextMock.Object);

            var updatedArticle = testArticles.First();

            updatedArticle.SetCode("1st article updated");
            var isContextUpdateCalled = false;

            //_dataContextMock.Setup(m => m.Set<Article>()).Returns(_articleDbSetMock.Object).Verifiable();
            dataContextMock.Setup(m => m.Update(It.IsAny <object>())).Callback(() => isContextUpdateCalled = true);

            //Act
            articleRepository.Update(updatedArticle);

            //Assert
            //_dataContextMock.Verify(m => m.Update(updatedArticle), Times.Once); //doesn't work with generic type
            Assert.That(isContextUpdateCalled, Is.True);
        }
        public async Task Create_InvalidObject_ReturnsNull()
        {
            //Arrange
            var testArticles     = ArticleList.GetDefaultList();
            var articleDbSetMock = testArticles.AsQueryable().BuildMockDbSet();
            var dataContextMock  = new Mock <CommandDbContext>();

            dataContextMock.Setup(m => m.Articles).Returns(articleDbSetMock.Object);
            var articleRepository = new Mock <IArticleRepository>();
            var unitOfWorkMock    = new Mock <IUnitOfWork>();

            unitOfWorkMock.Setup(uow => uow.ArticleRepository).Returns(articleRepository.Object);

            var articleForCreation   = new ArticleForCreationDto();
            var createArticleCommand = new CreateArticleCommand(unitOfWorkMock.Object, _writeMapper);

            unitOfWorkMock.Setup(uow => uow.Commit()).Returns(Task.FromResult(false));

            //Act
            var result = await createArticleCommand.Execute(articleForCreation);

            //Assert
            articleRepository.Verify(r => r.Add(It.IsAny <Article>()), Times.Once);
            Assert.That(result, Is.Null);
        }
 public void SetUp()
 {
     _articlesRepositoryMock = new Mock <IReadOnlyArticleRepository>();
     _articleParams          = new ArticleParams();
     _testArticles           = ArticleList.GetDefaultList().AsEnumerable();
     _pagedListOfArticles    = new PagedList <Article>(_testArticles, _testArticles.Count(), 1, 10);
     _readMapper             = new Mapper(new MapperConfiguration(cfg => cfg.AddProfile <Helpers.AutoMapperProfiles>()));
 }
Ejemplo n.º 4
0
 public void Setup()
 {
     _testArticles     = ArticleList.GetDefaultList();
     _articleDbSetMock = _testArticles.AsQueryable().BuildMockDbSet();
     _dataContextMock  = new Mock <CommandDbContext>();
     _dataContextMock.Setup(m => m.Articles).Returns(_articleDbSetMock.Object);
     _articleRepository = new ArticleRepository(_dataContextMock.Object);
     _unitOfWork        = new UnitOfWork(_dataContextMock.Object, _articleRepository, null);
 }
Ejemplo n.º 5
0
 public void SetUp()
 {
     _testArticles     = ArticleList.GetDefaultList();
     _articleDbSetMock = _testArticles.AsQueryable().BuildMockDbSet();
     _dataContextMock  = new Mock <CommandDbContext>();
     _dataContextMock.Setup(m => m.Articles).Returns(_articleDbSetMock.Object);
     _articleRepositoryMock = new Mock <IArticleRepository>();
     _unitOfWorkMock        = new Mock <IUnitOfWork>();
     _unitOfWorkMock.Setup(uow => uow.ArticleRepository).Returns(_articleRepositoryMock.Object);
     _unitOfWork = new UnitOfWork(TestContext, new ArticleRepository(TestContext), null);
 }
 public void SetUp()
 {
     _testArticles     = ArticleList.GetDefaultList();
     _articleDbSetMock = _testArticles.AsQueryable().BuildMockDbSet();
     _dataContextMock  = new Mock <CommandDbContext>();
     _dataContextMock.Setup(m => m.Articles).Returns(_articleDbSetMock.Object);
     _articleRepositoryMock = new Mock <IArticleRepository>();
     _articleRepository     = new ArticleRepository(TestContext);
     _unitOfWorkMock        = new Mock <IUnitOfWork>();
     _unitOfWorkMock.Setup(uow => uow.ArticleRepository).Returns(_articleRepositoryMock.Object);
     _unitOfWork  = new UnitOfWork(TestContext, _articleRepository, null);
     _writeMapper = new Mapper(new MapperConfiguration(cfg => cfg.AddProfile <Helpers.AutoMapperProfiles>()));
 }
Ejemplo n.º 7
0
        public DatabaseFixture()
        {
            _connection = new SqliteConnection("datasource=:memory:");
            _connection.Open();

            _options = new DbContextOptionsBuilder <CommandDbContext>()
                       .UseSqlite(_connection)
                       .Options;
            TestContext = new CommandDbContext(_options);
            TestContext.Database.EnsureCreated();
            TestContext.Articles.AddRange(ArticleList.GetDefaultList());
            TestContext.SaveChanges();

            _readOnlyOptions = new DbContextOptionsBuilder <QueryDbContext>()
                               .UseSqlite(_connection)
                               .Options;
            TestReadOnlyContext = new QueryDbContext(_readOnlyOptions);
            TestReadOnlyContext.Database.EnsureCreated();
        }