api#347: проверить старые recovery snapshots с default2
This commit is contained in:
1 parent
0d350ed14b
commit
1993f7b4b1
3 files changed
+10
-3
No files matched your search
@@ -1,13 +1,13 @@
|
||||
<?php
|
||||
declare(strict_types=1);
|
||||
$root = dirname(__DIR__);
|
||||
foreach (['abcd1','abcd2','abcd0','invalid'] as $part) foreach (['ru','en'] as $lang) foreach (['light', 'dark'] as $theme) foreach ([
|
||||
foreach (['abcd1','abcd2','abcd0','invalid'] as $part) foreach (['light', 'dark'] as $theme) foreach ([
|
||||
'zoomstage.online' => 'zoomstage.online',
|
||||
'New-Preland.example:8080' => 'new-preland.example',
|
||||
'www.example.test.' => 'www.example.test',
|
||||
'<script>alert(1)</script>' => 'fixture.local',
|
||||
] as $host => $expected) {
|
||||
$html = shell_exec(PHP_BINARY . ' ' . escapeshellarg(__DIR__ . '/render-preland.php') . ' ' . escapeshellarg($host) . ' ' . escapeshellarg($theme) . ' ' . escapeshellarg($part) . ' ' . escapeshellarg($lang));
|
||||
$html = shell_exec(PHP_BINARY . ' ' . escapeshellarg(__DIR__ . '/render-preland.php') . ' ' . escapeshellarg($host) . ' ' . escapeshellarg($theme) . ' ' . escapeshellarg($part));
|
||||
if (!preg_match('~<footer\b.*?</footer>~s', $html, $match)) throw new RuntimeException('Подвал не найден');
|
||||
$footer = $match[0];
|
||||
foreach (['Наши реквизиты', 'payment.svg', 'ИНН:', 'ОГРНИП:', 'ИП Иванов', 'ИП Кардаполова', 'Для бизнеса', '/public/api-pricing'] as $forbidden) {
|
||||
|
||||
@@ -41,3 +41,11 @@ for (const part of ['abcd9','abcd0','bad']) {
|
||||
assert.equal(query.get('part')[4],'1');
|
||||
}
|
||||
assert.equal(new URLSearchParams(handoff.query({utmDigits:{...defaults,part:'9'}},defaults)).get('part')[4],'1');
|
||||
// Старые recovery-records используют тот же fallback текущего resolved snapshot, что остальные метки.
|
||||
const configuredDefault2={...defaults,part:'2'};
|
||||
const oldDigits={...selected};delete oldDigits.part;
|
||||
const oldRecord={redirectUtm:foreign,utmDigits:oldDigits};
|
||||
assert.equal(new URLSearchParams(handoff.query(oldRecord,configuredDefault2)).get('part')[4],'2');
|
||||
assert.equal(new URLSearchParams(handoff.query({...oldRecord,utmDigits:{...oldDigits,part:'1'}},configuredDefault2)).get('part')[4],'1');
|
||||
assert.equal(new URLSearchParams(handoff.query({...oldRecord,redirectUtm:foreign+'&part=abcd1'},configuredDefault2)).get('part')[4],'1');
|
||||
console.log('OK: old recovery configured default2; saved snapshot/query retains priority');
|
||||
@@ -4,5 +4,4 @@ $_SERVER['HTTP_HOST'] = $argv[1] ?? 'zoomstage.online';
|
||||
$_SERVER['SERVER_NAME'] = 'fixture.local';
|
||||
$_GET = ['theme' => 'abcd' . (($argv[2] ?? 'light') === 'dark' ? '1' : '2'), 'indpic' => 'abcd1'];
|
||||
if (isset($argv[3])) $_GET['part'] = $argv[3];
|
||||
if (isset($argv[4])) $_GET['lang'] = $argv[4];
|
||||
require dirname(__DIR__) . '/index.php';
|
||||
Reference in new issue
Block a user