private void SetupSut( IReadOnlyDictionary <int, IEnumerable <OrganizationRole> > roleMap = null, IReadOnlyDictionary <int, OrganizationCategory> categoryMap = null, bool isStakeHolder = true) { _userId = A <int>(); _municipalityOrganizationId = A <int>(); _otherOrgTypeOrganizationId = _municipalityOrganizationId + 1; _unknownOrganizationId = _otherOrgTypeOrganizationId + 1; _rolesPerOrganizationId = roleMap ?? new Dictionary <int, IEnumerable <OrganizationRole> > { { _municipalityOrganizationId, A <IEnumerable <OrganizationRole> >() }, { _otherOrgTypeOrganizationId, A <IEnumerable <OrganizationRole> >() } }.AsReadOnly(); _categoryPerOrganizationId = categoryMap ?? new Dictionary <int, OrganizationCategory> { { _municipalityOrganizationId, OrganizationCategory.Municipality }, { _otherOrgTypeOrganizationId, OrganizationCategory.Other } }.AsReadOnly(); _sut = new OrganizationalUserContext( _userId, _rolesPerOrganizationId, _categoryPerOrganizationId, isStakeHolder ); }
public IQueryable <Advice> GetAdvicesAccessibleToCurrentUser() { return(OrganizationalUserContext.IsGlobalAdmin() ? AdviceRepository.AsQueryable() : OrganizationalUserContext .OrganizationIds .Select(GetAdvicesForOrg) .Aggregate <IQueryable <Advice>, IQueryable <Advice> > ( null, (acc, next) => acc == null ? next : acc.Concat(next) )); }