PanTS_Website / tests /unit /test_nifti_processing.py
jen900704's picture
Upload 40 files
e9406c7 verified
import unittest
from services.nifti_processor import NiftiProcessor
"""
Each test session has
ct.nii.gz
- Main nifti/CT Scan file
/combined_labels_ANS/combined_labels.nii.gz
- segmentation files combined into one (TESTING CREATED ONE AGAINST THIS ONE)
/combined_labels.nii.gz
- segmentation file that NiftiProcessor will create and store here (FILE THAT NEEDS TO BE TESTED)
/segmentations - Directory containing 9 nifti segmentation files, which are:
- aorta.nii.gz
- gall_bladder.nii.gz
- kidney_left.nii.gz
- kidney_right.nii.gz
- liver.nii.gz
- pancreas.nii.gz
- postcava.nii.gz
- spleen.nii.gz
- stomach.nii.gz
test-045:
ct.nii.gz ~ 17 mb
combined_labels ~ 151kb
test-050
ct.nii.gz ~ 13mb
combined_labels ~ 116kb
test-338
ct.nii.gz ~ 16mb
combined_labels ~ 204kb
organ_intensities = {
aorta: 1,
gall_bladder: 2,
kidney_left: 3,
kidney_right: 4,
liver: 5,
pancreas: 6,
postcava: 7,
spleen: 8,
stomach: 9
}
"""
class TestNiftiProcessing(unittest.TestCase):
def setUp(self):
self.clabel_path = None #overload this
self.main_nifti_path = None # overload this
self.organ_intensities = {"aorta": 1,
"gall_bladder": 2,
"kidney_left": 3,
"kidney_right": 4,
"liver": 5,
"pancreas": 6,
"postcava": 7,
"spleen": 8,
"stomach": 9 }
def test_case_045(self):
print("testcase 045")
self.clabel_path = "./test-sessions/test-045/combined_labels_ANS/combined_labels.nii.gz"
self.main_nifti_path = "./test-sessions/test-045/ct.nii.gz"
nifti_processor = NiftiProcessor(self.main_nifti_path, self.clabel_path)
nifti_processor.set_organ_intensities(self.organ_intensities)
#print(nip._organ_intensities)
organ_metrics = nifti_processor.calculate_metrics()
self.assertNotEqual(organ_metrics, None)
def test_case_050(self):
print("testcase 050")
self.clabel_path = "./test-sessions/test-050/combined_labels_ANS/combined_labels.nii.gz"
self.main_nifti_path = "./test-sessions/test-050/ct.nii.gz"
nifti_processor = NiftiProcessor(self.main_nifti_path, self.clabel_path)
nifti_processor.set_organ_intensities(self.organ_intensities)
#print(nip._organ_intensities)
organ_metrics = nifti_processor.calculate_metrics()
self.assertNotEqual(organ_metrics, None)
def test_case_338(self):
print("testcase 338")
self.clabel_path = "./test-sessions/test-050/combined_labels_ANS/combined_labels.nii.gz"
self.main_nifti_path = "./test-sessions/test-050/ct.nii.gz"
nifti_processor = NiftiProcessor(self.main_nifti_path, self.clabel_path)
nifti_processor.set_organ_intensities(self.organ_intensities)
#print(nip._organ_intensities)
organ_metrics = nifti_processor.calculate_metrics()
self.assertNotEqual(organ_metrics, None)