Exemplo n.º 1
0
        public async Task DeleteAndSaveTest()
        {
            var courseMember1 = new CourseMember()
            {
                CourseId = 1, MemberId = 1, Day = "Monday"
            };
            var courseMember2 = new CourseMember()
            {
                CourseId = 2, MemberId = 2, Day = "Tuesday"
            };
            var courseMembers = new List <CourseMember> {
                courseMember1, courseMember2
            };

            var fakeCourseMemberRepositoryMock = new Mock <ICourseMemberRepository>();
            var fakeCourseRepositoryMock = new Mock <ICourseRepository>(); var fakeMemberRepositoryMock = new Mock <IMemberRepository>();

            fakeCourseMemberRepositoryMock.Setup(x => x.Delete(It.IsAny <long>(), It.IsAny <long>())).Callback(() => courseMembers.RemoveAt(1));

            var courseMemberService = new CourseMemberService(fakeCourseMemberRepositoryMock.Object, fakeCourseRepositoryMock.Object, fakeMemberRepositoryMock.Object);

            await courseMemberService.DeleteAndSave(courseMember2.CourseId, courseMember2.MemberId);

            Assert.Single(courseMembers);
            Assert.Equal("Monday", courseMembers[0].Day);
        }
        public async Task <IActionResult> DeleteConfirmed(long CourseId, long MemberId)
        {
            await _courseMemberService.DeleteAndSave(CourseId, MemberId);

            return(RedirectToAction(nameof(Index)));
        }