#!/usr/bin/env python3
"""Cek auto-fit hc48: pastikan semua slide air=1.00 shrink=1.00 (isi tidak kepanjangan)."""
import sys
sys.path.insert(0, "/home/mantapman/.hermes/profiles/atun/workspace")
import ss_carousel_lib as L

INFO = []
_orig = L.Slide.render


def patched(self, filename=None, out_dir=".", quiet=True):
    items, block_h, air, shrink = self._fit()
    area = L.BOT_LIM - L.TOP_LIM
    INFO.append((filename, air, shrink, block_h, area - block_h))
    return _orig(self, filename, out_dir, quiet)


L.Slide.render = patched

import studiosoft_hc48_carousel_gen as g  # noqa: E402

for fn in (g.s1, g.s2, g.s3, g.s4, g.s5):
    fn()

bad = 0
for name, air, shrink, h, left in INFO:
    flag = "OK " if (air == 1.0 and shrink == 1.0) else "FIT"
    if air != 1.0 or shrink != 1.0:
        bad += 1
    print("%s %-40s air=%.2f shrink=%.2f tinggi=%d sisa=%d" % (flag, name, air, shrink, h, left))
print("slide perlu shrink/air:", bad)
