Per ora si corre solo per Campomigliaio: gli altri rioni si vedono chiusi
Piazza, Pieve e Cardetole restano nella scelta, col lucchetto e «prossimamente» (locked in story.rioni), per non moltiplicare battute e voci; in docs/STATO.md cosa fare quando si sbloccano. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01ApqNBvNbNCwXqR2RLo8QJh
This commit is contained in:
+4
-3
@@ -81,11 +81,12 @@ try {
|
||||
await page.waitForSelector('#rione:not([hidden])');
|
||||
assert.equal(await page.locator('#rione-buttons button').count(), 4);
|
||||
await page.screenshot({ path: `${OUT}/01a-rione.png` });
|
||||
await page.click('#rione [data-rione="pieve"]');
|
||||
assert.equal(await page.locator('#rione-buttons button:disabled').count(), 3, 'per ora gli altri tre rioni sono chiusi');
|
||||
await page.click('#rione [data-rione="campomigliaio"]');
|
||||
// L'introduzione: una riga per clic, poi comincia la partita.
|
||||
await page.waitForSelector('#intro:not([hidden])');
|
||||
for (let i = 0; i < 2; i++) await page.click('#intro', { position: { x: 40, y: 40 } });
|
||||
assert.match(await page.textContent('#intro-text'), /Pieve, i bianchi/, 'la riga del rione scelto');
|
||||
assert.match(await page.textContent('#intro-text'), /Campomigliaio, i blu/, 'la riga del rione scelto');
|
||||
await page.screenshot({ path: `${OUT}/01b-intro.png` });
|
||||
for (let i = 0; i < 10 && await page.isVisible('#intro'); i++) await page.click('#intro', { position: { x: 40, y: 40 } });
|
||||
assert.ok(await page.isHidden('#intro'), 'l\'introduzione non finisce');
|
||||
@@ -95,7 +96,7 @@ try {
|
||||
assert.match(await page.evaluate(() => voices.audio.src), /assets\/voices\/andrea-[0-9a-f]+\.mp3$/);
|
||||
await page.waitForFunction(() => music.duck === 0.45, null, { timeout: 2000 });
|
||||
await page.screenshot({ path: `${OUT}/02-inizio.png` });
|
||||
assert.ok(await page.evaluate(() => game.state.flags['rione:pieve']), 'il rione resta nella partita');
|
||||
assert.ok(await page.evaluate(() => game.state.flags['rione:campomigliaio']), 'il rione resta nella partita');
|
||||
const fits = async p => p.evaluate(() => document.querySelector('#panel').getBoundingClientRect().bottom <= innerHeight);
|
||||
assert.ok(await fits(page), 'verbi e inventario fuori dallo schermo');
|
||||
await settle(page);
|
||||
|
||||
Reference in New Issue
Block a user