import io from PIL import Image from spriteforge.studio.quality import analyze_candidate def png(box): image=Image.new("RGBA",(32,32),(0,0,0,0));image.paste((100,120,130,255),box);out=io.BytesIO();image.save(out,"PNG");return out.getvalue() def test_candidate_metrics_measure_silhouette_consistency(): same=analyze_candidate(png((8,8,24,24)),png((8,8,24,24))) shifted=analyze_candidate(png((8,8,24,24)),png((16,8,32,24))) assert same.opaque_fraction==.25 and same.neighbor_silhouette_iou==1 assert shifted.neighbor_silhouette_iou<.5