С 1.22.00.
Эта страница документации не завершена.
Старт
Для работы API тестов нужно заполнить 2 конфигурационные переменные:
$conf{API_TEST_USER_LOGIN}
— логин пользователя для тестов$conf{API_TEST_USER_PASSWORD}
— пароль пользователя для тестов
Опционально можете заполнить $conf{API_TEST_URL}
- URL для тестов. По умолчанию это значение localhost.
Модуль
За пример взят модуль Portal.
Расположение Abills/modules/Portal
Создаём:
- папку t
- папку t/schemas
- папку t/schemas/admin
- папку t/schemas/user
- файл t/Api.t
Создаём папки для каждого эндпоинта, в ADMIN или(и) USER API например:
- articles_list - GET /portal/articles
- articles_info - GET /portal/articles/:id/
- article_add - POST /portal/articles
- articles_update - PUT /portal/articles/:id/
- article_delete - DELETE /portal/articles/:id/
И так далее.
Ядро
За пример взят микромодуль Companies.
Расположение - t/Api
Создаём:
- папку Companies
- папку Companies/schemas
- папку Companies/schemas/admin
- файл Companies/Api.t
Создаём папки для каждого эндпоинта, в ADMIN или(и) USER API например:
- companies - GET /companies
- company - GET /companies/:id/
- company_add - POST /companies
- companies_change - PUT /companies/:id/
- company_delete - DELETE /companies/:id/
Создание реквеста и json-schema
И в каждом эндпоинте создаём файлы:
- request.json - JSON интерпретация заданного реквеста
- schema.json - JSON-SCHEMA ожидаемого ответа
Про json-schema почитать тут.