public async Task EditCourse_ShouldNotEditCourseIf_UserIsNotCreator() { var user = new GoUser { Id = "2" }; var coursesRepoBuilder = new CoursesRepositoryBuilder(); var courseRepo = coursesRepoBuilder .WithAll() .Build(); var sut = new CoursesService(null, courseRepo, null, Mapper); var editCourseViewModel = new EditCourseViewModel { Id = "2", Image = SetupFileMock().Object, Title = "Edit", Description = "Brr", MaxCountParticipants = 7, StartDate = DateTime.Now.AddDays(2), DurationOfDays = 5, Status = Status.Practically, Category = Category.Other }; await sut.EditCourse(editCourseViewModel, user); coursesRepoBuilder.CoursesRepoMock.Verify(d => d.SaveChangesAsync(), Times.Exactly(0)); }
public async Task EditCourseTest() { var options = new DbContextOptionsBuilder <ApplicationDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()); var courseRepository = new EfDeletableEntityRepository <Course>(new ApplicationDbContext(options.Options)); var mockUserCourseRepository = new Mock <IRepository <UserCourse> >(); var mockConfiguration = new Mock <IConfiguration>(); var mockCategoryService = new Mock <ICategoriesService>(); var store = new Mock <IUserStore <ApplicationUser> >(); var mockUserManager = new Mock <UserManager <ApplicationUser> >(store.Object, null, null, null, null, null, null, null, null); var service = new CoursesService(courseRepository, mockUserCourseRepository.Object, mockConfiguration.Object, mockCategoryService.Object, mockUserManager.Object); var coursesToAdd = this.GetCourseData(); foreach (var item in coursesToAdd) { await courseRepository.AddAsync(item); await courseRepository.SaveChangesAsync(); } await service.EditCourse("1", "EditedName", "1", "Expert", "stillnothing", "NewDescription", "User1"); var course = courseRepository.All().FirstOrDefault(x => x.Id == "1"); Assert.Equal("EditedName", course.Name); Assert.Equal("Expert", course.Difficulty); Assert.Equal("stillnothing", course.ThumbnailUrl); Assert.Equal("User1", course.UserId); }
public void EditCourse(CourseDTO course) { string login = HttpContext.Session.GetString("User_Login"); CoursesService service = new CoursesService(services); service.EditCourse(course, login); }
public async Task EditCourse_ShouldEditCourseCorrectly() { var coursesRepoBuilder = new CoursesRepositoryBuilder(); var courseRepo = coursesRepoBuilder .WithAll() .Build(); var sut = new CoursesService(null, courseRepo, null, Mapper); var editCourseViewModel = new EditCourseViewModel { Id = "2", Image = SetupFileMock().Object, Title = "Edit", Description = "Brr", MaxCountParticipants = 7, StartDate = DateTime.Now.AddDays(2), DurationOfDays = 5, Status = Status.Practically, Category = Category.Other }; var user = new GoUser { Id = "9" }; await sut.EditCourse(editCourseViewModel, user); coursesRepoBuilder.CoursesRepoMock.Verify(d => d.SaveChangesAsync(), Times.Once); var newdest = courseRepo.All().FirstOrDefault(x => x.Id == "2"); var actual = Mapper.Map <EditCourseViewModel>(newdest); Assert.Equal(editCourseViewModel, actual, new EditCourseViewModelComparer()); }