.. module:: Tests Tests ========================= ``BaseApiTestCases`` provides a reusable foundation for API integration tests. It calls ``reset_routers()`` in ``setUp()`` before every test method to prevent router state from leaking between test cases. Usage example: .. code-block:: python # -*- coding: utf-8 -*- from fastapi import APIRouter from core_apis.api.routers import add_router from core_apis.tests import BaseApiTestCases router = APIRouter() add_router(router) @router.get("/items") def list_items(): return [] class ItemsTestCases(BaseApiTestCases): def test_list_items(self): response = self.client.get("/api/items") self.assertEqual(response.status_code, 200) .. Custom CORS or application configuration can be applied by overriding ``setUpClass`` and calling ``init_client``: .. code-block:: python @classmethod def setUpClass(cls): cls.init_client(with_cors=False) .. .. automodule:: core_apis.tests.base :members: :undoc-members: :show-inheritance: :private-members: .. automodule:: core_apis.tests.runner :members: :undoc-members: :show-inheritance: :private-members: