mirror of
https://github.com/iflytek/skillhub.git
synced 2026-10-11 03:37:57 +00:00
* feat(web): unify landing and dashboard experience
Closes #824
Made-with: Proma
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
* fix(web): clamp skill card summaries
Keep skill grids compact by reserving a stable three-line summary region while exposing the full description via the title attribute.
Made-with: Proma
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
* test(web): align e2e with redesigned experience
Update real-service E2E assertions for the current landing and dashboard flows, and make settings card headings distinct from their page headings.
Made-with: Proma
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
* Revert "test(web): align e2e with redesigned experience"
This reverts commit 3f78115277.
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
* fix(web): align dashboard layout footer spacing
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
* fix(web): restore footer access links
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
* fix(web): link footer API to Swagger UI
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
* fix(web): refine footer resource links
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
* fix(web): link landing CTA to open source resources
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
* fix(frontend): restore responsive navigation contracts
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
* fix(web): wrap narrow search controls
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
* test(web): derive landing guide origin
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
* fix(web): remove landing statistics strip
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
* test(web): align landing guide assertion
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
* fix(web): address follow-up review feedback
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
* fix(web): update landing CLI version
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
---------
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
41 lines
1.6 KiB
TypeScript
41 lines
1.6 KiB
TypeScript
import { expect, test } from '@playwright/test'
|
|
import { setEnglishLocale } from './helpers/auth-fixtures'
|
|
import { registerSession } from './helpers/session'
|
|
|
|
test.describe('User ID Display', () => {
|
|
test.beforeEach(async ({ page }, testInfo) => {
|
|
await setEnglishLocale(page)
|
|
await registerSession(page, testInfo)
|
|
})
|
|
|
|
test('shows user ID in the dashboard sidebar', async ({ page }) => {
|
|
await page.goto('/dashboard')
|
|
|
|
const userIdText = page.getByRole('complementary').getByText('User ID', { exact: false })
|
|
await expect(userIdText).toBeVisible()
|
|
|
|
// The dashboard renders "User ID: <value>" in a single element.
|
|
// Verify the value is not empty by checking the text content is longer than just the label.
|
|
const content = await userIdText.textContent()
|
|
const valueAfterLabel = content?.replace(/^.*User ID[:\s]*/i, '').trim() ?? ''
|
|
expect(valueAfterLabel.length).toBeGreaterThan(0)
|
|
})
|
|
|
|
test('shows user ID on profile settings page', async ({ page }) => {
|
|
await page.goto('/settings/profile')
|
|
await expect(page.getByRole('heading', { name: 'Profile Settings' })).toBeVisible()
|
|
|
|
const label = page.getByText('User ID', { exact: true })
|
|
await expect(label).toBeVisible()
|
|
|
|
// The value is rendered in a sibling <p> element right after the label.
|
|
// Locate the value paragraph within the same container.
|
|
const container = page.locator('.space-y-2', { has: label })
|
|
const value = container.locator('p')
|
|
await expect(value).toBeVisible()
|
|
|
|
const text = await value.textContent()
|
|
expect(text?.trim()).not.toBe('')
|
|
expect(text?.trim()).not.toBe('-')
|
|
})
|
|
})
|