# AUTO-GENERATED by tools/checkspecs.py - DO NOT EDIT
from ..preprocess import FAST


def test_FAST_inputs():
    input_map = dict(
        args=dict(argstr="%s",),
        bias_iters=dict(argstr="-I %d",),
        bias_lowpass=dict(argstr="-l %d", units="mm",),
        environ=dict(nohash=True, usedefault=True,),
        hyper=dict(argstr="-H %.2f",),
        img_type=dict(argstr="-t %d",),
        in_files=dict(argstr="%s", copyfile=False, mandatory=True, position=-1,),
        init_seg_smooth=dict(argstr="-f %.3f",),
        init_transform=dict(argstr="-a %s", extensions=None,),
        iters_afterbias=dict(argstr="-O %d",),
        manual_seg=dict(argstr="-s %s", extensions=None,),
        mixel_smooth=dict(argstr="-R %.2f",),
        no_bias=dict(argstr="-N",),
        no_pve=dict(argstr="--nopve",),
        number_classes=dict(argstr="-n %d",),
        other_priors=dict(argstr="-A %s",),
        out_basename=dict(argstr="-o %s", extensions=None,),
        output_biascorrected=dict(argstr="-B",),
        output_biasfield=dict(argstr="-b",),
        output_type=dict(),
        probability_maps=dict(argstr="-p",),
        segment_iters=dict(argstr="-W %d",),
        segments=dict(argstr="-g",),
        use_priors=dict(argstr="-P",),
        verbose=dict(argstr="-v",),
    )
    inputs = FAST.input_spec()

    for key, metadata in list(input_map.items()):
        for metakey, value in list(metadata.items()):
            assert getattr(inputs.traits()[key], metakey) == value


def test_FAST_outputs():
    output_map = dict(
        bias_field=dict(),
        mixeltype=dict(extensions=None,),
        partial_volume_files=dict(),
        partial_volume_map=dict(extensions=None,),
        probability_maps=dict(),
        restored_image=dict(),
        tissue_class_files=dict(),
        tissue_class_map=dict(extensions=None,),
    )
    outputs = FAST.output_spec()

    for key, metadata in list(output_map.items()):
        for metakey, value in list(metadata.items()):
            assert getattr(outputs.traits()[key], metakey) == value
