Beispiel #1
0
        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));
        }
Beispiel #2
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);
        }
Beispiel #3
0
        public void EditCourse(CourseDTO course)
        {
            string         login   = HttpContext.Session.GetString("User_Login");
            CoursesService service = new CoursesService(services);

            service.EditCourse(course, login);
        }
Beispiel #4
0
        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());
        }