def test_table_output(tmpdir): # create mock data stat_img_name = os.path.basename(STAT_IMG)[:-7] # temporary output output_dir = tmpdir.mkdir('mni_test') atlasreader.create_output(STAT_IMG, cluster_extent=20, voxel_thresh=4, atlas='default', outdir=output_dir) # test if output tables contain expected output df = pd.read_csv(output_dir.join('{}_clusters.csv'.format(stat_img_name))) assert np.allclose(df[df.keys()[1:6]].values, EXPECTED_TABLES['cluster']) df = pd.read_csv(output_dir.join('{}_peaks.csv'.format(stat_img_name))) assert np.allclose(df[df.keys()[1:6]].values, EXPECTED_TABLES['peak'])
def main(): """ The primary entrypoint for calling atlas reader via the command line All parameters are read via argparse, so this should only be called from the command line! """ opts = _get_parser() create_output(opts.filename, atlas=check_atlases(opts.atlas), voxel_thresh=opts.voxel_thresh, cluster_extent=opts.cluster_extent, prob_thresh=opts.prob_thresh, outdir=opts.outdir)
def test_create_output(tmpdir): # create mock data stat_img_name = os.path.basename(STAT_IMG)[:-7] # temporary output output_dir = tmpdir.mkdir('mni_test') atlasreader.create_output(STAT_IMG, cluster_extent=20, atlas=['Harvard_Oxford'], outdir=output_dir) # test if output exists and if the key .csv and .png files were created assert output_dir.exists() assert len(output_dir.listdir()) > 0 assert output_dir.join('{}_clusters.csv'.format(stat_img_name)).isfile() assert output_dir.join('{}_peaks.csv'.format(stat_img_name)).isfile() assert output_dir.join('{}.png'.format(stat_img_name)).isfile()
def test_plotting(tmpdir): """Test functionality of kwarg implementation""" # temporary output output_dir = tmpdir.mkdir('mni_test') # overwrite some default params atlasreader.create_output(STAT_IMG, cluster_extent=20, atlas=['Harvard_Oxford'], outdir=output_dir, glass_plot_kws={'display_mode': 'ortho'}, stat_plot_kws={'black_bg': False}) # add new parameter not already set by default atlasreader.create_output(STAT_IMG, cluster_extent=20, atlas=['Harvard_Oxford'], outdir=output_dir, glass_plot_kws={'alpha': .4})
def test_table_output(tmpdir): # create mock data stat_img_name = os.path.basename(STAT_IMG)[:-7] # temporary output output_dir = tmpdir.mkdir('mni_test') atlasreader.create_output(STAT_IMG, cluster_extent=20, atlas=['AAL', 'desikan_killiany', 'Harvard_Oxford'], outdir=output_dir) # test if output tables contain expected output cluster_checksum = hashlib.md5(open(output_dir.join( '{}_clusters.csv'.format(stat_img_name)), 'rb').read()).hexdigest() peak_checksum = hashlib.md5(open(output_dir.join( '{}_peaks.csv'.format(stat_img_name)), 'rb').read()).hexdigest() assert cluster_checksum == 'b03705caeaad17b3cbc9f9b6042bdd72' assert peak_checksum == '061b505b6a505053e4e8e4e25d051b1a'
def test_create_output(tmpdir): # create mock data motor_images = fetch_neurovault_motor_task() stat_img = motor_images.images[0] stat_img_name = os.path.basename(stat_img)[:-7] # temporary output output_dir = tmpdir.mkdir('mni_test') atlasreader.create_output(stat_img, atlas=['Harvard_Oxford'], outdir=output_dir) # test if output exists and if the key .csv and .png files were created assert os.path.exists(output_dir) assert len(os.listdir(output_dir)) > 0 assert os.path.isfile( os.path.join(output_dir, '{}_clusters.csv'.format(stat_img_name))) assert os.path.isfile( os.path.join(output_dir, '{}_peaks.csv'.format(stat_img_name))) assert os.path.isfile( os.path.join(output_dir, '{}.png'.format(stat_img_name)))