# UJ-010 Test backend connection

Audience: AI coding agents first.

- Actor + entry point: WordPress administrator; settings `#/settings`, `API Configuration`.
- Priority: MUST-HAVE.
- Preconditions: Configure API URL/key through UJ-009.
- Test layer: L2.

## Steps

1. Activate `Test Connection` → `Testing connection...` toast renders (`admin/src/pages/settings.js:711-720`).
2. Backend health returns `200` → `Connection successful!` renders and connection status becomes connected (`admin/src/pages/settings.js:722-730`).

## Failure branches

- Missing/invalid key → visible missing-key/API-status error; status becomes error (`includes/API/SettingsController.php:379-389`, `admin/src/pages/settings.js:725-735`).
- Rate limit `429` → visible backend status/message; status error.
- Backend unreachable → visible connection failure including transport message (`includes/API/SettingsController.php:400-407`).

## Backend touchpoints

Plugin `POST /wp-json/international-press-zone/v1/settings/test-connection`; backend `GET /health` (`docs/contracts/plugin-client-contract.md:281-288`).
