private OrganizationAuthorizationContext CreateOrganizationAuthorizationContext(IOrganizationalUserContext userContext) { Maybe <GlobalConfig> globalConfig = _globalConfigurationRepository .AsQueryable() .FirstOrDefault(gc => gc.key == GlobalConfigKeys.OnlyGlobalAdminMayEditReports); //NOTE: SupplierAccess is injected here because then it is not "organizationAuthorizationContext but supplierauthorizationcontext" var onlyGlobalAdminMayEditReports = globalConfig.Select(x => bool.TrueString.Equals(x.value, StringComparison.OrdinalIgnoreCase)).GetValueOrFallback(false); var moduleLevelAccessPolicy = new ModuleModificationPolicy(userContext, onlyGlobalAdminMayEditReports); return(new OrganizationAuthorizationContext( userContext, _typeResolver, moduleLevelAccessPolicy, GlobalReadAccessPolicy, moduleLevelAccessPolicy, _userRepository )); }
public ModuleModificationPolicyTest() { _userContext = new Mock <IOrganizationalUserContext>(); _sut = new ModuleModificationPolicy(_userContext.Object, false); }