public async Task Then_Gets_Course_Epao_From_Mediator(
            int courseId,
            string epaoId,
            GetCourseEpaoResult mediatorResult,
            [Frozen] Mock <IMediator> mockMediator,
            [Greedy] CoursesController controller)
        {
            mockMediator
            .Setup(mediator => mediator.Send(
                       It.Is <GetCourseEpaoQuery>(query => query.CourseId == courseId && query.EpaoId == epaoId),
                       It.IsAny <CancellationToken>()))
            .ReturnsAsync(mediatorResult);

            var controllerResult = await controller.CourseEpao(courseId, epaoId) as ObjectResult;


            controllerResult !.StatusCode.Should().Be((int)HttpStatusCode.OK);
            var model = controllerResult.Value as GetCourseEpaoResponse;

            model !.Course.Should().BeEquivalentTo((GetCourseListItem)mediatorResult.Course);
            model !.Epao.Should().BeEquivalentTo((EpaoDetails)mediatorResult.Epao);
            model !.CourseEpaosCount.Should().Be(mediatorResult.CourseEpaosCount);
            model !.EpaoDeliveryAreas.Should().BeEquivalentTo(
                mediatorResult.EpaoDeliveryAreas.Select(area => (EpaoDeliveryArea)area));
            model !.DeliveryAreas.Should().BeEquivalentTo(
                mediatorResult.DeliveryAreas.Select(item => (GetDeliveryAreaListItem)item));
            model !.EffectiveFrom.Should().Be(mediatorResult.EffectiveFrom);
            model !.AllCourses.Should().BeEquivalentTo(
                mediatorResult.AllCourses.Select(item => (GetCourseListItem)item));
        }
Esempio n. 2
0
        private void tempToolStripMenuItem_Click(object sender, EventArgs e)
        {
            AllCourses allCourses = new AllCourses();

            allCourses.MdiParent = this;
            allCourses.Show();
        }
        public async Task Then_Gets_CourseEpao_From_Handler(
            GetCourseEpaoDetailsRequest getRequest,
            GetCourseEpaoResult mediatorResult,
            [Frozen] Mock <IMediator> mockMediator,
            [Frozen] Mock <ILocationStringBuilder> mockLocationStringBuilder,
            [Greedy] CoursesController controller)
        {
            mockMediator
            .Setup(mediator => mediator.Send(
                       It.Is <GetCourseEpaoQuery>(query =>
                                                  query.CourseId == getRequest.Id &&
                                                  query.EpaoId == getRequest.EpaoId),
                       It.IsAny <CancellationToken>()))
            .ReturnsAsync(mediatorResult);

            var result = await controller.CourseEpao(getRequest) as ViewResult;

            var model = result !.Model as CourseEpaoViewModel;

            model !.Course.Should().BeEquivalentTo((CourseListItemViewModel)mediatorResult.Course);
            model !.CourseEpaosCount.Should().Be(mediatorResult.CourseEpaosCount);
            model !.Epao.Should().BeEquivalentTo(new EpaoDetailsViewModel(
                                                     mediatorResult.Epao,
                                                     mediatorResult.EpaoDeliveryAreas,
                                                     mediatorResult.DeliveryAreas,
                                                     mockLocationStringBuilder.Object.BuildLocationString
                                                     ));
            model !.EffectiveFrom.Should().Be(mediatorResult.EffectiveFrom);
            model !.AllCourses.Should().BeEquivalentTo(
                mediatorResult.AllCourses.Select(item => (CourseListItemViewModel)item));
        }
Esempio n. 4
0
        public async Task <IActionResult> Addcourse(AllCourses course)
        {
            await db.AllCourses.AddAsync(new AllCourses { Name = course.Name, dateTime = DateTime.Now });

            await db.SaveChangesAsync();

            return(RedirectToAction(nameof(Addcourse)));
        }
Esempio n. 5
0
        static void Main(string[] args)
        {
            //  ILector lector;
            Professor  professor = new Professor("Ivan Ivanovich");
            ICourse    cours     = professor.CreateCourse("ASP.NET.MVC");
            AllCourses electives = new AllCourses();

            electives.AddCourse(cours);
            Student student = new Student("Petya");

            student.Subscribe(cours);
            cours.StartCours();
            cours.FinishedCours();
            Console.ReadKey();
        }
 public Course GetCourseById(int courseId)
 {
     return(AllCourses.FirstOrDefault(c => c.CourseId == courseId));
 }
Esempio n. 7
0
        public async Task <IActionResult> Index(string id, string status,
                                                string sort, string order)
        {
            status             = status ?? "Public";
            ViewData["Id"]     = id;
            ViewData["Status"] = status;
            ViewData["Sort"]   = sort ?? "Date Added";
            ViewData["Order"]  = order ?? "desc";

            AppUser user = await userManager.FindByIdAsync(id);

            if (user != null)
            {
                //AllCourses List
                List <AllCourses> allCourses = new List <AllCourses>();

                if (status == "All")
                {
                    foreach (Course course in repository.Courses
                             .Where(c => c.CreatedBy == user))
                    {
                        AllCourses c = new AllCourses
                        {
                            Course = course,
                            Video  = repository.Videos.FirstOrDefault(v => v.Id == course.VideoId)
                        };
                        allCourses.Add(c);
                    }
                }
                //status == Public || status == Private
                else
                {
                    foreach (Course course in repository.Courses
                             .Where(c => c.CreatedBy == user &&
                                    c.Status == status))
                    {
                        AllCourses c = new AllCourses
                        {
                            Course = course,
                            Video  = repository.Videos.FirstOrDefault(v => v.Id == course.VideoId)
                        };
                        allCourses.Add(c);
                    }
                }

                switch (sort)
                {
                case "Date Modified":
                    return(View(new AllCoursesViewModel
                    {
                        Content = (order == "asc") ?
                                  allCourses.OrderBy(c => c.Course.DateModified).AsQueryable() :
                                  allCourses.OrderByDescending(c => c.Course.DateModified).AsQueryable()
                    }));

                case "End Date":
                    return(View(new AllCoursesViewModel
                    {
                        Content = (order == "asc") ?
                                  allCourses.OrderBy(c => c.Course.EndDate).AsQueryable() :
                                  allCourses.OrderByDescending(c => c.Course.EndDate).AsQueryable()
                    }));

                case "Title":
                    return(View(new AllCoursesViewModel
                    {
                        Content = (order == "asc") ?
                                  allCourses.OrderBy(c => c.Course.Title).AsQueryable() :
                                  allCourses.OrderByDescending(c => c.Course.Title).AsQueryable()
                    }));

                default:
                    return(View(new AllCoursesViewModel
                    {
                        Content = (order == "asc") ?
                                  allCourses.OrderBy(c => c.Course.DateAdded).AsQueryable() :
                                  allCourses.OrderByDescending(c => c.Course.DateAdded).AsQueryable()
                    }));
                }
            }
            return(RedirectToAction("Error", "Error404"));
        }
        public async Task <IActionResult> MyCourses(string id, string sort, string order)
        {
            ViewData["Id"]            = id;
            ViewData["Title"]         = "My Courses";
            ViewData["CurrentAction"] = "MyCourses";
            ViewData["Sort"]          = sort;
            ViewData["Order"]         = order;


            AppUser user = await userManager.FindByIdAsync(id);

            if (user != null)
            {
                //AllCourses List
                List <AllCourses> allCourses = new List <AllCourses>();

                //courses
                List <Course> courses = new List <Course>();
                foreach (CourseUsers cu in repository.CourseUsers
                         .Where(c => c.AppUserId == user.Id))
                {
                    courses.Add(repository.Courses
                                .FirstOrDefault(c => c.CourseId == cu.CourseId));
                }

                foreach (Course course in courses
                         .Where(c => c.Status == "Public" &&
                                (c.CreatedBy.CompanyName == null ||
                                 c.CreatedBy.CompanyName == user.CompanyName)))
                {
                    //users on course
                    List <AppUser> usersOnCourse = new List <AppUser>();
                    foreach (string userId in repository.CourseUsers
                             .Where(cu => cu.CourseId == course.CourseId)
                             .Select(u => u.AppUserId))
                    {
                        usersOnCourse.Add(userManager.Users
                                          .FirstOrDefault(u => u.Id == userId));
                    }

                    AllCourses c = new AllCourses
                    {
                        Course              = course,
                        UsersOnCourse       = usersOnCourse.AsQueryable(),
                        Video               = repository.Videos.FirstOrDefault(v => v.Id == course.VideoId),
                        Likes               = VideoLikes(course.VideoId),
                        Dislikes            = VideoDislikes(course.VideoId),
                        CourseAverageRating = AvgCourseRating(course.Presentations.AsQueryable())
                    };
                    allCourses.Add(c);
                }

                switch (sort)
                {
                case "End Date":
                    return(View("AllCourses", new AllCoursesViewModel
                    {
                        Content = (order == "asc") ?
                                  allCourses.OrderBy(c => c.Course.EndDate).AsQueryable() :
                                  allCourses.OrderByDescending(c => c.Course.EndDate).AsQueryable()
                    }));

                case "Date Added":
                    return(View("AllCourses", new AllCoursesViewModel
                    {
                        Content = (order == "asc") ?
                                  allCourses.OrderBy(c => c.Course.DateAdded).AsQueryable() :
                                  allCourses.OrderByDescending(c => c.Course.DateAdded).AsQueryable()
                    }));

                default:
                    return(View("AllCourses", new AllCoursesViewModel
                    {
                        Content = (order == "asc") ?
                                  allCourses.OrderBy(c => c.Course.Title).AsQueryable() :
                                  allCourses.OrderByDescending(c => c.Course.Title).AsQueryable()
                    }));
                }
            }
            return(RedirectToAction("Error", "Error404"));
        }