import os from freesurfer_surface import Annotation from conftest import SUBJECTS_DIR def test_load_annotation(): annotation = Annotation.read(os.path.join(SUBJECTS_DIR, 'fabian', 'label', 'lh.aparc.annot')) assert len(annotation.vertex_label_index) == 155622 assert annotation.vertex_label_index[64290] == 22 assert annotation.vertex_label_index[72160] == 22 assert annotation.vertex_label_index[84028] == 24 assert annotation.vertex_label_index[97356] == 24 assert annotation.vertex_label_index[123173] == 27 assert annotation.vertex_label_index[140727] == 27 assert annotation.vertex_label_index[93859] == 28 assert annotation.vertex_label_index[78572] == 0 assert annotation.vertex_label_index[120377] == 0 assert annotation.colortable_path == b'/autofs/space/tanha_002/users/greve' \ b'/fsdev.build/average/colortable_desikan_killiany.txt' assert len(annotation.labels) == 36 assert vars(annotation.labels[0]) == {'index': 0, 'name': 'unknown', 'red': 25, 'green': 5, 'blue': 25, 'transparency': 0} assert vars(annotation.labels[28]) == {'index': 28, 'name': 'superiorfrontal', 'red': 20, 'green': 220, 'blue': 160, 'transparency': 0} precentral, = filter(lambda l: l.name == 'precentral', annotation.labels.values()) postcentral, = filter(lambda l: l.name == 'postcentral', annotation.labels.values()) assert vars(precentral) == {'index': 24, 'name': 'precentral', 'red': 60, 'green': 20, 'blue': 220, 'transparency': 0} assert vars(postcentral) == {'index': 22, 'name': 'postcentral', 'red': 220, 'green': 20, 'blue': 20, 'transparency': 0} superiorfrontal, = filter(lambda l: l.color_code == 10542100, annotation.labels.values()) assert superiorfrontal.name == 'superiorfrontal'