bioMedImage buildSurface

Edge Case: Invalid Thresholds and Missing Image Data

Scénario de test & Cas d'usage

Business Context

The system processes legacy data archives where some scan metadata might be corrupted or parameters might be entered incorrectly (e.g., Low threshold > High threshold). The pipeline must handle these errors gracefully without crashing the CAS session.
About the Set : bioMedImage

Processing and analysis of biomedical images (e.g., DICOM).

Discover all actions of bioMedImage
Data Preparation

Creation of a malformed dataset with missing binary data.

Copied!
1 
2DATA casuser.corrupted_scan;
3LENGTH _id_ $32 _image_ binary;
4_id_='corrupt_01';
5call missing(_image_);
6/* Missing binary blob */
7RUN;
8 

Étapes de réalisation

1
Attempt to build surface with inverted thresholds (Low > High) on corrupted data.
Copied!
1 
2PROC CAS;
3bioMedImage.buildSurface / images={TABLE={name='corrupted_scan', caslib='casuser'}} outputFaces={name='err_faces', replace=true} outputVertices={name='err_vertices', replace=true} thresholds={{low=2000, high=500}};
4 
5RUN;
6 
2
Check for proper error handling in the log.
Copied!
1/* Manual verification of the log for specific error codes regarding invalid range or empty image
2data */

Expected Result


The action should fail gracefully. It should return an error message indicating either that the image data is missing/invalid or that the threshold range is illogical (Low 2000 > High 500), without terminating the server process.