Exemple #1
0
        public async Task GetStudentAssignmentResultsAsync_ReturnsResults(
            bool admin)
        {
            var database = GetDatabaseWithSubmissions().Build();

            var userId = database.Context.Users.First().Id;

            database.Reload();

            var expectedResults = new StudentAssignmentResults(null, null, null, null);
            var studentAssignmentReportGenerator = new Mock <IStudentAssignmentReportGenerator>();

            studentAssignmentReportGenerator
            .Setup
            (
                asc => asc.GetStudentAssignmentGroupResults
                (
                    It.Is <User>(user => user.UserName == "User1"),
                    It.Is <Section>
                    (
                        section => section.Name == "Period1"
                    ),
                    It.Is <IList <Assignment> >
                    (
                        assignments => ValidateAssignments
                        (
                            assignments,
                            admin                                     /*includePrivate*/
                        )
                    ),
                    It.Is <IList <UserQuestionSubmission> >
                    (
                        submissions => ValidateStudentSubmissions(submissions)
                    ),
                    admin
                )
            ).Returns(expectedResults);

            var assignmentService = GetAssignmentService
                                    (
                database.Context,
                studentAssignmentReportGenerator: studentAssignmentReportGenerator.Object
                                    );

            var actualResults = await assignmentService.GetStudentAssignmentResultsAsync
                                (
                "Class1",
                userId,
                admin
                                );

            Assert.Equal(expectedResults, actualResults);
        }
 /// <summary>
 /// Constructor.
 /// </summary>
 public StudentAssignmentsViewModel(
     StudentAssignmentResults results,
     IAssignmentDisplayProviderFactory displayProviderFactory)
 {
     LastName               = results.LastName;
     FirstName              = results.FirstName;
     SectionName            = results.SectionName;
     AssignmentGroupResults = results.AssignmentGroupResults.Select
                              (
         result => new AssignmentGroupResultViewModel
         (
             result,
             displayProviderFactory
         )
                              ).ToList();
 }