public void All_ShouldReturnsNotDeletedObjects_IfValid() { // Arrange var notDeletedUser = new User { IsDeleted = false }; var DeletedUser = new User { IsDeleted = true }; var users = new List <User>() { notDeletedUser, DeletedUser }; var usersDbSet = GetQueryableMockDbSet(users); var mockedContext = new Mock <DbContext>(); mockedContext.Setup(c => c.Set <User>()).Returns(usersDbSet); var repository = new DbRepository <User>(mockedContext.Object); // Act var result = repository.All(); // Assert Assert.AreEqual(1, result.ToList().Count); }
public void CreateReturnsClassInRepository() { var model = new ClassesCreateViewModel { DayOfWeek = DaysOfWeek.Понеделник.ToString(), Discipline = Disciplines.Английски_език.ToString(), Room = Room.Стая_1.ToString(), TimeOfDay = "11:00 - 12:30", TeacherId = "teacherId", StudentIds = new List <string> { "studentId" } }; var options = new DbContextOptionsBuilder <LearningPlusDbContext>() .UseInMemoryDatabase(databaseName: "Create_Classes_Database") // Give a Unique name to the DB .Options; var dbContext = new LearningPlusDbContext(options); var repository = new DbRepository <LearningPlusClass>(dbContext); var classesService = new ClassesService(null, null, repository, null); var createdModel = classesService.Create(model); repository.All().CountAsync().GetAwaiter().GetResult().ShouldBe(1); }
public async void Import() { IEnumerable <Quote> quotes = await this.GetQuotes(); var context = new ApplicationDbContext(); IDbRepository <SQL.Quote> repo = new DbRepository <SQL.Quote>(context); var quotesService = new QuotesService(repo); foreach (var quote in quotes) { if (repo.All().Any(q => q.Text.ToLower() == quote.Text.ToLower())) { continue; } quotesService.Add(new SQL.Quote() { Text = quote.Text, Author = this.LoadOrCreateAuthor(context, quote.Author, quote.AuthorImageUrl), CreatedOn = DateTime.Now, ModifiedOn = DateTime.Now, IsDeleted = false, Tags = quote.Tags.Select(tag => new SQL.Tag { Name = tag } ).ToList() }); Console.Write("."); } Console.WriteLine("Done!"); }
public async Task UpdateArticleShouldBeSuccessfull() { var options = new DbContextOptionsBuilder <SportsNewsContext>() .UseInMemoryDatabase(databaseName: "Find_User_Database4") .Options; var dbContext = new SportsNewsContext(options); var repository = new DbRepository <Article>(dbContext); var articlesService = new ArticlesService(repository, null); await articlesService.Create(1, "sdsda", "dasasd"); var id = repository.All().FirstOrDefault().Id; await articlesService.Update(id, "Changed", 2, "Ok"); var article = repository.All().FirstOrDefault(); Assert.Equal("Changed", article.Content); }
public async Task DeleteShouldBeSuccessfull() { var options = new DbContextOptionsBuilder <SportsNewsContext>() .UseInMemoryDatabase(databaseName: "VideosTests2") .Options; var dbContext = new SportsNewsContext(options); var repository = new DbRepository <Video>(dbContext); var videosService = new VideosService(repository); await videosService.Create(1, "dasasd"); await videosService.Create(1, "dasasd"); var id = repository.All().FirstOrDefault().Id; await videosService.Delete(id); var count = repository.All().Count(); Assert.Equal(1, count); }
public void RegisterFeedBackShouldActuallyRegistersFeedback() { var options = new DbContextOptionsBuilder <TattooShopContext>() .UseInMemoryDatabase(databaseName: "Unique_Db_Name_57852181") .Options; var dbContext = new TattooShopContext(options); var feedbackRepository = new DbRepository <ContactInfo>(dbContext); var homeService = new HomeService(null, null, feedbackRepository); homeService.RegisterFeedBack("Kaloqn", "Kaloqnov", "mn qk sait", "*****@*****.**", "975649867"); Assert.Equal(1, feedbackRepository.All().Count()); }
private SQL.Author LoadOrCreateAuthor(ApplicationDbContext context, string author, string authorImageUrl) { IDbRepository <SQL.Author> repo = new DbRepository <SQL.Author>(context); var dbAuthor = repo.All() .FirstOrDefault(a => a.Name.ToLower() == author.ToLower()) ?? new SQL.Author { Name = author, ImageUrl = authorImageUrl, CreatedOn = DateTime.Now, ModifiedOn = DateTime.Now, IsDeleted = false }; return(dbAuthor); }
public async Task CreateArticleShouldBeSuccessfull() { var options = new DbContextOptionsBuilder <SportsNewsContext>() .UseInMemoryDatabase(databaseName: "CategoryTests") .Options; var dbContext = new SportsNewsContext(options); var repository = new DbRepository <Category>(dbContext); var categoriesService = new CategoriesService(repository); await categoriesService.Create("Football", "dsdaasd"); var count = repository.All().Count(); Assert.Equal(1, count); }
public async Task CreateArticleShouldBeSuccessfull() { var options = new DbContextOptionsBuilder <SportsNewsContext>() .UseInMemoryDatabase(databaseName: "VideosTests") .Options; var dbContext = new SportsNewsContext(options); var repository = new DbRepository <Video>(dbContext); var videosService = new VideosService(repository); await videosService.Create(1, "test"); var count = repository.All().Count(); Assert.Equal(1, count); }
public async Task CategoryShouldBeValid() { var options = new DbContextOptionsBuilder <SportsNewsContext>() .UseInMemoryDatabase(databaseName: "CategoryTests2") .Options; var dbContext = new SportsNewsContext(options); var repository = new DbRepository <Category>(dbContext); var categoriesService = new CategoriesService(repository); await categoriesService.Create("Basket", "dsasddas"); var categoryId = repository.All().FirstOrDefault().Id; var isValid = categoriesService.IsCategoryIdValid(categoryId); Assert.True(isValid); }
public void GetByIdReturnsCorrectNews() { var mockNews = new Mock <LearningPlusNews>(); var options = new DbContextOptionsBuilder <LearningPlusDbContext>() .UseInMemoryDatabase(databaseName: "GetById_News_Database") // Give a Unique name to the DB .Options; var dbContext = new LearningPlusDbContext(options); dbContext.News.Add(mockNews.Object); dbContext.SaveChanges(); var newsRepo = new DbRepository <LearningPlusNews>(dbContext); var newsId = newsRepo.All().FirstOrDefaultAsync().GetAwaiter().GetResult().Id.ToString(); var lpNewsService = new LearningPlusNewsService(null, newsRepo); var newsById = lpNewsService.GetById(newsId); newsById.CountAsync().GetAwaiter().GetResult().ShouldBe(1); }
public async Task AddBookShouldActuallyAddBookToDatabase() { var options = new DbContextOptionsBuilder <TattooShopContext>() .UseInMemoryDatabase(databaseName: "Unique_Db_Name_5785216") .Options; var dbContext = new TattooShopContext(options); dbContext.Artists.Add(new Artist() { Id = "1" }); dbContext.Users.Add(new TattooShopUser() { Id = "2" }); dbContext.SaveChanges(); var artistsRepository = new DbRepository <Artist>(dbContext); var booksRepository = new DbRepository <Book>(dbContext); var imageService = new ImageService(dbContext); var tattoosRepository = new DbRepository <Tattoo>(dbContext); var artistsService = new ArtistsService(artistsRepository, imageService, booksRepository, tattoosRepository); var fileMock = new Mock <IFormFile>(); var content = "Hallo world from a fake file!"; var fileName = "test.pdf"; var ms = new MemoryStream(); var writer = new StreamWriter(ms); writer.Write(content); writer.Flush(); ms.Position = 0; fileMock.Setup(x => x.OpenReadStream()).Returns(ms); fileMock.Setup(x => x.FileName).Returns(fileName); fileMock.Setup(x => x.Length).Returns(ms.Length); await artistsService.AddBook(DateTime.UtcNow.AddDays(3).ToString(), "short description", fileMock.Object, "Geometric", "2", "1"); Assert.Equal(1, booksRepository.All().Count()); }
public async Task AllShouldReturnEntitiesCountOfDbSet() { var options = new DbContextOptionsBuilder <TimeMachineContext>() .UseInMemoryDatabase(databaseName: "Get_All_Tags_Db") .Options; var db = new TimeMachineContext(options); var dbRepository = new DbRepository <Tag>(db); await dbRepository.AddAsync(new Tag()); await dbRepository.AddAsync(new Tag()); await dbRepository.AddAsync(new Tag()); await dbRepository.SaveChangesAsync(); var tagsCount = dbRepository.All().Count(); Assert.Equal(3, tagsCount); }
public void FakeDeleteReturnsCorrectItem() { var mockNews = new Mock <LearningPlusNews>(); mockNews.Setup(n => n.ExpiresOn).Returns(DateTime.UtcNow); var options = new DbContextOptionsBuilder <LearningPlusDbContext>() .UseInMemoryDatabase(databaseName: "FakeDelete_News_Database") // Give a Unique name to the DB .Options; var dbContext = new LearningPlusDbContext(options); dbContext.News.Add(mockNews.Object); dbContext.SaveChanges(); var newsRepo = new DbRepository <LearningPlusNews>(dbContext); var lpNewsService = new LearningPlusNewsService(null, newsRepo); var id = newsRepo.All().FirstOrDefaultAsync().GetAwaiter().GetResult().Id.ToString(); var news = lpNewsService.FakeDelete(id); DateTime.UtcNow.AddDays(-1).ShouldBeLessThanOrEqualTo(news.ExpiresOn); }
public IEnumerable <StudentEntity> All() { return(respository.All <StudentEntity>()); }