code: def test_erosion(create_files_in_directory_plus_output_type):
      (
          files,
          testdir,
          out_ext,
      ) = create_files_in_directory_plus_output_type
  
      # Get the command
      erode = fsl.ErodeImage(in_file="a.nii", out_file="b.nii")
  
      # Test the underlying command
      assert erode.cmd == "fslmaths"
  
      # Test the basic command line
      assert erode.cmdline == "fslmaths a.nii -ero b.nii"
  
      # Test that something else happens when you minimum filter
      erode.inputs.minimum_filter = True
      assert erode.cmdline == "fslmaths a.nii -eroF b.nii"
  
      # Test that we don't need to request an out name
      erode = fsl.ErodeImage(in_file="a.nii")
      assert erode.cmdline == "fslmaths a.nii -ero {}".format(
          os.path.join(testdir, f"a_ero{out_ext}")
      )
  
imports: import os
  import numpy
  from nipype.interfaces.base import Undefined
  import nipype.interfaces.fsl.maths
  from nipype.interfaces.fsl import no_fsl
  import pytest
  from nipype.testing.fixtures import create_files_in_directory_plus_output_type
label_desc: Use image node_id 10 for calling a global function with example usage: test_erosion(create_files_in_directory_plus_output_type) without return types