feat: refine portfolio content, contact, and supporting media
This commit is contained in:
@@ -100,11 +100,10 @@ test('exposes the complete semantic portfolio from the generated document', asyn
|
||||
);
|
||||
await expect(page.locator('.route-label')).toHaveCount(0);
|
||||
await expect(page.getByRole('link', { name: 'Explore work' })).toHaveAttribute('href', '#selected-builds');
|
||||
await expect(page.getByRole('link', { name: 'Email Luca' })).toHaveCount(2);
|
||||
await expect(page.getByRole('link', { name: 'Contact Me' })).toHaveAttribute('href', '#contact');
|
||||
await expect(page.getByRole('link', { name: 'Email Me' })).toHaveCount(1);
|
||||
await expect(page.locator('[data-featured-operation]')).toContainText('without data loss');
|
||||
expect(await page.locator('[data-testid="toolkit-technology"]', { hasText: 'DNS' }).locator('span').evaluate(
|
||||
(label) => getComputedStyle(label).gridColumn,
|
||||
)).toBe('1 / -1');
|
||||
await expect(page.locator('[data-testid="toolkit-technology"]', { hasText: 'DNS' }).locator('svg')).toHaveCount(1);
|
||||
expect(await page.locator('.hero-journey').evaluate((hero) => {
|
||||
const content = hero.querySelector('.hero-journey__content')!;
|
||||
const heroStyle = getComputedStyle(hero);
|
||||
@@ -172,8 +171,10 @@ test('keeps canonical native anchors and safe external destinations', async ({
|
||||
}
|
||||
|
||||
const email = page.locator('a[href^="mailto:"]');
|
||||
await expect(email).toHaveCount(2);
|
||||
await expect(email).toHaveText(['Email Luca', 'Email Luca']);
|
||||
await expect(email).toHaveCount(0);
|
||||
await page.getByRole('link', { name: 'Email Me' }).focus();
|
||||
await expect(email).toHaveCount(1);
|
||||
await expect(email).toHaveText('Email Me');
|
||||
expect(await email.evaluateAll((links) => [...new Set(links.map((link) => link.getAttribute('href')))])).toEqual(
|
||||
['mailto:luca.pislaru@gmail.com'],
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user