//[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>())); }
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); }
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>())); }
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(); }