Contract-compatible точки входа
В MyWoolbridge должен меняться base URL, а provider path остается таким же, как у реального API. Данные разделяются через X-Fake-Project.
CDEK
Base: http://localhost:3035/api/cdek или http://cdek-fake.mywoolbridge.local
POST /v2/oauth/tokenGET /v2/deliverypointsPOST /v2/calculator/tariffPOST /v2/calculator/tarifflistPOST /v2/ordersGET /v2/orders/:uuidПочта РФ
Base: http://localhost:3035/api/rupost или http://rupost-fake.mywoolbridge.local
POST /1.0/clean/addressPOST /1.0/tariffGET /1.0/user/shipping-pointsGET /1.0/postofficePUT /1.0/user/backlogGET /1.0/backlog/:idТ-Банк
Base: http://localhost:3035/api/tbank или http://tbank-fake.mywoolbridge.local
POST /v2/InitPOST /v2/GetStatePOST /v2/CheckOrderPOST /v2/CancelPOST /v2/ConfirmPOST /v2/FinishAuthorizeRoute scenarios
Служебное управление: /api/_control/scenarios
route:GET:/v2/deliverypointsroute:POST:/v2/calculator/tariffroute:GET:/1.0/postofficeroute:POST:/1.0/tariffStrict auth и credentials
Служебное управление fake credentials: /api/_control/credentials
CDEK: key=client_id, secret=client_secretRUPOST: key=AccessToken, secret=Basic user tokenTBANK: key=TerminalKey, secret=terminal passwordДля проверки включить FAKE_STRICT_AUTH=1.
Lifecycle и события
Служебное управление статусами: /api/_control/lifecycle
Журнал запросов и callback-уведомлений: /api/_control/events и /ui/events
TBANK: NEW → CONFIRMED / CANCELED / REJECTEDCDEK: ACCEPTED → DELIVERED / INVALIDRUPOST: CREATED → IN_TRANSIT → DELIVEREDUI control panel
/ui/scenarios — редактор route-сценариев.
/ui/lifecycle — смена статусов и ручная отправка callbacks/webhooks.
/ui/fixtures — редактор provider fixtures по проекту.
/ui/credentials — fake credentials и helper для T-Bank Token.
/ui/captures — capture/replay управление.
/ui/events — журнал inbound/outbound событий.
Testing, Winston logs, capture/replay
Winston JSON logs: runtime/logs/fake-services.log
Scenario suites: tests/scenario-suites/*.json
Reports: runtime/test-reports/*.json
Capture/replay API: /api/_control/captures and /ui/captures
docker compose run --rm fake_services_test_runnerpnpm test:scenarios:all