feat(embed,ui04): E07 acceptance — matrix completion, hostile-CSS hardening, measurements and record closure
- E07 e2e (7 cases): 4-viewport fixed size, narrow shrink + dual-slot 12px stack, single/static + empty state + two-photo loop copies, broken-thumb drop, reducedMotion stop with manual arrows, forged postMessage rejected, hostile CSS (!important box-sizing/border) with inline-important countermeasures + duplicate script dedup - loader v2: geometry-critical properties upgraded to inline !important (beats host stylesheet !important) - pre-existing fixes: likes.spec view-count assertion vs concurrent session's AlbumHeader unicode icons (toContainText); embed-v2 host port moved to 3998 (3999 collides with embed-crossorigin under parallel full runs); prettier formatting of two concurrent-session files (formatting-only) - evidence: matrix EMB-A01..A16 closed in acceptance record (mechanism-level items honestly marked), measurements (loader v2 9885B/gzip 3959B, first-load 1 GET + 1 WS, DOM<=16), refreshed screenshots/recordings, master plan UI-04 note - regression: root lint/typecheck/test 12 packages green; embed suites 43/43; admin embed-slots 5/5; journey pre-existing env failure reproduced at clean HEAD (registered) Co-Authored-By: Claude Code <noreply@anthropic.com>
This commit is contained in:
@@ -222,19 +222,19 @@ test('visit counting: fresh context counts once, reload is idempotent, second co
|
||||
try {
|
||||
await openAlbum(page1, token);
|
||||
// 首访计数(上报成功后以权威 viewCount 回填)。
|
||||
await expect(page1.locator('.view-count')).toHaveText('1 次浏览', { timeout: 15_000 });
|
||||
await expect(page1.locator('.view-count')).toContainText('1 次浏览', { timeout: 15_000 });
|
||||
|
||||
// 刷新:visitorId 持久 + 窗口去重 → 不再计数。
|
||||
await page1.reload();
|
||||
await expect(page1.locator('.cell').first()).toBeVisible();
|
||||
await expect(page1.locator('.view-count')).toHaveText('1 次浏览');
|
||||
await expect(page1.locator('.view-count')).toContainText('1 次浏览');
|
||||
|
||||
// 第二个全新上下文:新 visitorId → 再计数。
|
||||
const ctx2 = await browser.newContext();
|
||||
try {
|
||||
const page2 = await ctx2.newPage();
|
||||
await openAlbum(page2, token);
|
||||
await expect(page2.locator('.view-count')).toHaveText('2 次浏览', { timeout: 15_000 });
|
||||
await expect(page2.locator('.view-count')).toContainText('2 次浏览', { timeout: 15_000 });
|
||||
} finally {
|
||||
await ctx2.close();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user