code: def test_feature_screening(affine_eye):
      # dummy
      mask_img_data = np.zeros((182, 218, 182))
      mask_img_data[30:-30, 30:-30, 30:-30] = 1
      mask_img = nibabel.Nifti1Image(mask_img_data, affine=affine_eye)
  
      for is_classif in [True, False]:
          for screening_percentile in [100, None, 20, 101, -1, 10]:
              if (
                  screening_percentile == 100
                  or screening_percentile is None
              ):
                  assert (
                      check_feature_screening(
                          screening_percentile, mask_img, is_classif
                      )
                      is None
                  )
              elif (
                  screening_percentile == 101
                  or screening_percentile == -1
              ):
                  with pytest.raises(ValueError):
                      check_feature_screening(
                          screening_percentile,
                          mask_img,
                          is_classif,
                      )
              elif screening_percentile == 20:
                  assert isinstance(
                      check_feature_screening(
                          screening_percentile, mask_img, is_classif
                      ),
                      BaseEstimator,
                  )
  
file_path: nilearn/nilearn/_utils/tests/test_param_validation.py
imports: import os
  import warnings
  import nibabel
  import numpy
  import pytest
  from sklearn.base import BaseEstimator
  from nilearn._utils.extmath import fast_abs_percentile
  from nilearn._utils.param_validation import MNI152_BRAIN_VOLUME, check_feature_screening, check_threshold, get_mask_volume
label_desc: Use image node_id 3 for calling a global function with example usage: test_feature_screening(affine_eye) without return types