示例#1
0
        public void GetDelegatesOnCourse_returns_expected_values()
        {
            // Given
            var expectedFirstRecord = new CourseDelegate
            {
                Active          = true,
                CandidateNumber = "PC97",
                CompleteByDate  = null,
                DelegateId      = 32926,
                EmailAddress    = "erpock.hs@5bntu",
                Enrolled        = new DateTime(2012, 07, 02, 13, 30, 37, 807),
                FirstName       = "xxxxx",
                LastName        = "xxxx",
                LastUpdated     = new DateTime(2012, 07, 31, 10, 18, 39, 993),
                Locked          = false,
                ProgressId      = 18395,
                RemovedDate     = null,
                Completed       = null,
                AllAttempts     = 0,
                AttemptsPassed  = 0
            };

            // When
            var result = courseDelegatesDataService.GetDelegatesOnCourse(1, 2).ToList();

            // Then
            using (new AssertionScope())
            {
                result.Should().HaveCount(3);
                result.First().Should().BeEquivalentTo(expectedFirstRecord);
            }
        }
        public List <CourseAdminFieldWithAnswer> GetCourseAdminFieldsWithAnswersForCourseDelegate(
            CourseDelegate courseDelegate
            )
        {
            var result = GetCourseAdminFieldsResultForCourse(courseDelegate.CustomisationId);

            return(PopulateCourseAdminFieldWithAnswerListFromResult(result, courseDelegate));
        }
 public DelegateCourseInfoViewModel(
     CourseDelegate courseDelegate,
     DelegateAccessRoute accessedVia,
     ReturnPageQuery returnPageQuery
     ) : this(courseDelegate)
 {
     AccessedVia     = accessedVia;
     ReturnPageQuery = returnPageQuery;
     Tags            = FilterableTagHelper.GetCurrentTagsForCourseDelegate(courseDelegate);
 }
        private List <CourseAdminFieldWithAnswer> PopulateCourseAdminFieldWithAnswerListFromResult(
            CourseAdminFieldsResult?result,
            CourseDelegate courseDelegate
            )
        {
            var list = new List <CourseAdminFieldWithAnswer>();

            if (result == null)
            {
                return(list);
            }

            var prompt1 = PromptHelper.PopulateCourseAdminFieldWithAnswer(
                1,
                result.CourseAdminField1Prompt,
                result.CourseAdminField1Options,
                courseDelegate.Answer1
                );

            if (prompt1 != null)
            {
                list.Add(prompt1);
            }

            var prompt2 = PromptHelper.PopulateCourseAdminFieldWithAnswer(
                2,
                result.CourseAdminField2Prompt,
                result.CourseAdminField2Options,
                courseDelegate.Answer2
                );

            if (prompt2 != null)
            {
                list.Add(prompt2);
            }

            var prompt3 = PromptHelper.PopulateCourseAdminFieldWithAnswer(
                3,
                result.CourseAdminField3Prompt,
                result.CourseAdminField3Options,
                courseDelegate.Answer3
                );

            if (prompt3 != null)
            {
                list.Add(prompt3);
            }

            return(list);
        }
示例#5
0
 public SearchableCourseDelegateViewModel(CourseDelegate courseDelegate)
 {
     DelegateId      = courseDelegate.DelegateId;
     CandidateNumber = courseDelegate.CandidateNumber;
     TitleName       = courseDelegate.TitleName;
     Active          = courseDelegate.Active;
     ProgressId      = courseDelegate.ProgressId;
     Locked          = courseDelegate.Locked;
     LastUpdated     = courseDelegate.LastUpdated.ToString(DateHelper.StandardDateAndTimeFormat);
     Enrolled        = courseDelegate.Enrolled.ToString(DateHelper.StandardDateAndTimeFormat);
     CompleteBy      = courseDelegate.CompleteByDate?.ToString(DateHelper.StandardDateAndTimeFormat);
     Completed       = courseDelegate.Completed?.ToString(DateHelper.StandardDateAndTimeFormat);
     RemovedDate     = courseDelegate.RemovedDate?.ToString(DateHelper.StandardDateAndTimeFormat);
     PassRate        = courseDelegate.PassRate;
     Tags            = FilterableTagHelper.GetCurrentTagsForCourseDelegate(courseDelegate);
 }
        public static List <DelegateCourseAdminField> GetCourseAdminFieldViewModels(
            CourseDelegate courseDelegate,
            IEnumerable <CourseAdminField> courseAdminFields
            )
        {
            var answers = new List <string?>
            {
                courseDelegate.Answer1,
                courseDelegate.Answer2,
                courseDelegate.Answer3,
            };

            return(courseAdminFields.Select(
                       c => new DelegateCourseAdminField(
                           c.PromptNumber,
                           c.PromptText,
                           answers[c.PromptNumber - 1]
                           )
                       ).ToList());
        }
示例#7
0
        public static IEnumerable <SearchableTagViewModel> GetCurrentTagsForCourseDelegate(CourseDelegate courseDelegate)
        {
            var tags = new List <SearchableTagViewModel>();

            if (courseDelegate.Active)
            {
                tags.Add(new SearchableTagViewModel(CourseDelegateAccountStatusFilterOptions.Active));
            }
            else
            {
                tags.Add(new SearchableTagViewModel(CourseDelegateAccountStatusFilterOptions.Inactive));
            }

            if (courseDelegate.Locked)
            {
                tags.Add(new SearchableTagViewModel(CourseDelegateProgressLockedFilterOptions.Locked));
            }
            else
            {
                tags.Add(new SearchableTagViewModel(CourseDelegateProgressLockedFilterOptions.NotLocked, true));
            }

            if (courseDelegate.RemovedDate.HasValue)
            {
                tags.Add(new SearchableTagViewModel(CourseDelegateProgressRemovedFilterOptions.Removed));
            }
            else
            {
                tags.Add(new SearchableTagViewModel(CourseDelegateProgressRemovedFilterOptions.NotRemoved, true));
            }

            return(tags);
        }