from conftest import ANNOTATION_FILE_PATH from freesurfer_surface import Annotation def test_load_annotation(): annotation = Annotation.read(ANNOTATION_FILE_PATH) 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"