import unittest
from pathlib import Path


ROOT = Path(__file__).resolve().parents[1]


def source(path: str) -> str:
    return (ROOT / path).read_text(encoding="utf-8")


class FinanceReportingTests(unittest.TestCase):
    def test_finance_api_exposes_summary_and_gst_period_endpoints(self) -> None:
        api = source("app/api/finance.py")
        main = source("app/main.py")

        self.assertIn('prefix="/api/finance"', api)
        self.assertIn('@router.get("/summary"', api)
        self.assertIn('@router.get("/gst-periods"', api)
        self.assertIn('@router.get("/gst-settings"', api)
        self.assertIn('@router.put("/gst-settings"', api)
        self.assertIn("cycle_months", api)
        self.assertIn("issued", api)
        self.assertIn("confirmed", api)
        self.assertIn("app.include_router(finance_router)", main)


if __name__ == "__main__":
    unittest.main()
