import asyncio
from sqlalchemy import delete, select
from app.core.database import AsyncSessionLocal
from app.models.models import MikrotikDevice

TARGET_ID = 2
TARGET_NAME = "Ternate-sop"


async def main():
    async with AsyncSessionLocal() as db:
        target = await db.get(MikrotikDevice, TARGET_ID)
        if target is None or target.name != TARGET_NAME:
            raise RuntimeError("Target dummy tidak cocok; penghapusan dibatalkan.")
        await db.execute(delete(MikrotikDevice).where(MikrotikDevice.id == TARGET_ID))
        await db.commit()
        remaining = (await db.execute(select(MikrotikDevice.name).order_by(MikrotikDevice.id))).scalars().all()
        print(f"deleted={TARGET_NAME};remaining={len(remaining)};names={','.join(remaining)}")


asyncio.run(main())
