Files
progcode/web/public/assets/editorial/2018/php-false-green-trace-2018.svg
T
huncode c72a72b8f3
Build and deploy / deploy (push) Successful in 14s
revise late 2018 editorial articles
2026-07-31 10:09:53 +03:00

35 lines
4.2 KiB
XML

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 720 900" role="img" aria-labelledby="title desc">
<title id="title">Трасса фальшиво-зелёного сценария PHP</title>
<desc id="desc">Unit-тест подменяет базу и HTTP-клиент, поэтому не видит ошибки конфигурации. Интеграционный маршрут проходит через PDO, тестовую базу, локальный callback и связывает шаги request ID.</desc>
<defs>
<linearGradient id="bg" x1="0" x2="1" y1="0" y2="1"><stop stop-color="#172942"/><stop offset="1" stop-color="#322f55"/></linearGradient>
<marker id="arrowBlue" markerWidth="10" markerHeight="10" refX="8" refY="5" orient="auto"><path d="M0,0 L10,5 L0,10z" fill="#8ed7ff"/></marker>
<marker id="arrowGreen" markerWidth="10" markerHeight="10" refX="8" refY="5" orient="auto"><path d="M0,0 L10,5 L0,10z" fill="#7ce3b9"/></marker>
</defs>
<rect width="720" height="900" rx="30" fill="url(#bg)"/>
<text x="52" y="65" fill="#fff" font-family="Arial, sans-serif" font-size="34" font-weight="700">Где появляется ложная зелень</text>
<text x="52" y="102" fill="#c3d2e8" font-family="Arial, sans-serif" font-size="22">Сначала видим границу, потом её проверяем</text>
<rect x="55" y="150" width="610" height="165" rx="20" fill="#414366" stroke="#d2c4ff" stroke-width="3"/>
<text x="86" y="199" fill="#fff" font-family="Arial, sans-serif" font-size="27" font-weight="700">UNIT: заранее заданный успех</text>
<text x="86" y="239" fill="#e5e0ff" font-family="Arial, sans-serif" font-size="21">Подмены не читают DSN, не делают SQL</text>
<text x="86" y="273" fill="#e5e0ff" font-family="Arial, sans-serif" font-size="21">и не видят cURL или HTTP status.</text>
<path d="M360 315 V378" stroke="#8ed7ff" stroke-width="5" marker-end="url(#arrowBlue)"/>
<rect x="55" y="398" width="610" height="210" rx="20" fill="#1e4260" stroke="#8ed7ff" stroke-width="3"/>
<text x="86" y="445" fill="#ddf3ff" font-family="Arial, sans-serif" font-size="27" font-weight="700">Короткая трасса</text>
<rect x="92" y="477" width="110" height="64" rx="12" fill="#305d7d"/><text x="147" y="517" text-anchor="middle" fill="#fff" font-family="Arial, sans-serif" font-size="21" font-weight="700">config</text>
<path d="M202 509 H255" stroke="#8ed7ff" stroke-width="4" marker-end="url(#arrowBlue)"/>
<rect x="267" y="477" width="90" height="64" rx="12" fill="#28604f"/><text x="312" y="517" text-anchor="middle" fill="#fff" font-family="Arial, sans-serif" font-size="21" font-weight="700">PDO</text>
<path d="M357 509 H410" stroke="#8ed7ff" stroke-width="4" marker-end="url(#arrowBlue)"/>
<rect x="422" y="477" width="90" height="64" rx="12" fill="#5b4d87"/><text x="467" y="517" text-anchor="middle" fill="#fff" font-family="Arial, sans-serif" font-size="21" font-weight="700">cURL</text>
<path d="M512 509 H555" stroke="#8ed7ff" stroke-width="4" marker-end="url(#arrowBlue)"/>
<rect x="567" y="477" width="66" height="64" rx="12" fill="#2a6175"/><text x="600" y="517" text-anchor="middle" fill="#fff" font-family="Arial, sans-serif" font-size="19" font-weight="700">202</text>
<text x="92" y="576" fill="#c6e3f4" font-family="Arial, sans-serif" font-size="19">TEST_ vars</text>
<text x="267" y="576" fill="#c6e3f4" font-family="Arial, sans-serif" font-size="19">test DB</text>
<text x="422" y="576" fill="#c6e3f4" font-family="Arial, sans-serif" font-size="19">local callback</text>
<rect x="55" y="667" width="610" height="170" rx="20" fill="#14372f" stroke="#7ce3b9" stroke-width="3"/>
<text x="86" y="716" fill="#e5fff3" font-family="Arial, sans-serif" font-size="27" font-weight="700">INTEGRATION: реальный маршрут</text>
<text x="86" y="757" fill="#c6efdc" font-family="Arial, sans-serif" font-size="22">registration-test-42 связывает шаги</text>
<text x="86" y="792" fill="#c6efdc" font-family="Arial, sans-serif" font-size="22">и оставляет контролируемые следы.</text>
<path d="M360 608 V660" stroke="#7ce3b9" stroke-width="4" stroke-dasharray="9 8" marker-end="url(#arrowGreen)"/>
</svg>