public void GetAuthorizedEdOrgs_Should_ReturnUserSessionEdOrgs()
        {
            var authorizedEdOrgs = new List <EdOrg>
            {
                new EdOrg {
                    Id = 12345
                },
                new EdOrg {
                    Id = 23456
                }
            };

            foreach (var edorg in authorizedEdOrgs)
            {
                DefaultTestAppUserSession.UserIdentity.AuthorizedEdOrgs.Add(edorg);
            }

            AppUserServiceMock.Setup(x => x.GetSession()).Returns(DefaultTestAppUserSession);

            var edOrgService = new EdOrgService(
                DbContextFactoryMock.Object,
                AppUserServiceMock.Object,
                SchoolYearServiceMock.Object,
                SchoolYearDbContextFactoryMock.Object,
                LoggingServiceMock.Object);

            var result = edOrgService.GetAuthorizedEdOrgs();

            result.ShouldHaveSameItems(authorizedEdOrgs);
        }
Exemple #2
0
        public ActionResult Index()
        {
            var focusedSchoolYearId = AppUserService.GetSession().FocusedSchoolYearId;
            // var focusedSchoolYearId = 8;

            var focusedEdOrg = EdOrgService.GetEdOrgById(
                AppUserService.GetSession().FocusedEdOrgId,
                SchoolYearService.GetSchoolYearById(focusedSchoolYearId).Id);
            // var focusedEdOrg = EdOrgService.GetEdOrgById(10347, 2018);

            var recordsRequests = RecordsRequestService.GetAllRecordsRequests()
                                  .Where(x =>
                                         x.RespondingDistrict == focusedEdOrg.Id &&
                                         x.SchoolYearId == focusedSchoolYearId &&
                                         (x.Status == RecordsRequestStatus.PartialResponse || x.Status == RecordsRequestStatus.Requested)).ToList();

            foreach (var recordRequest in recordsRequests)
            {
                recordRequest.RequestingDistrictName = EdOrgService.GetEdOrgById(recordRequest.RequestingDistrict, focusedSchoolYearId).OrganizationName;
            }

            var model = new HomeIndexViewModel
            {
                AppUserSession             = AppUserService.GetSession(),
                Announcements              = AnnouncementService.GetAnnouncements(),
                YearsOpenForDataSubmission = ValidatedDataSubmissionService.GetYearsOpenForDataSubmission(),
                AuthorizedEdOrgs           = EdOrgService.GetAuthorizedEdOrgs(),
                FocusedEdOrg     = focusedEdOrg,
                RecordsRequests  = recordsRequests,
                SubmissionCycles = SubmissionCycleService.GetSubmissionCyclesOpenToday()
            };

            if (!model.AuthorizedEdOrgs.Any())
            {
                return(new HttpUnauthorizedResult("Unauthorized - no educational organizations assigned to user."));
            }

            return(View(model));
        }