guanghu/tests/smoke/non-git-vault-init.spec.ts
冰朔 8739805f99
Some checks failed
Auto-update PR branches / Update open PR branches (push) Has been cancelled
CI / Frontend Static Quality Checks (push) Has been cancelled
CI / Frontend Tests & Coverage (push) Has been cancelled
CI / Rust Tests & Quality Checks (push) Has been cancelled
CI / Linux build verification (push) Has been cancelled
Release (Alpha) / Compute alpha version (push) Has been cancelled
Release (Alpha) / Build release artifacts (push) Has been cancelled
Release (Alpha) / GitHub Release (alpha) (push) Has been cancelled
Release (Alpha) / Update docs and release pages (push) Has been cancelled
Deploy docs / Build VitePress site (push) Has been cancelled
Deploy docs / Deploy to GitHub Pages (push) Has been cancelled
光湖开源源码快照 · Tolaria AGPL 分叉基线 · 独立更新链
2026-07-05 17:45:16 +08:00

33 lines
1.5 KiB
TypeScript

import { test, expect } from '@playwright/test'
import { createFixtureVaultCopy, openFixtureVault, removeFixtureVaultCopy } from '../helpers/fixtureVault'
import { executeCommand, openCommandPalette } from './helpers'
test('opens a non-git vault and initializes Git later from the keyboard @smoke', async ({ page }) => {
const tempVaultDir = createFixtureVaultCopy()
try {
await openFixtureVault(page, tempVaultDir, { isGitRepo: false })
await expect(page.getByTestId('note-list-container')).toBeVisible()
await expect(page.getByText('Alpha Project', { exact: true }).first()).toBeVisible()
await expect(page.getByRole('heading', { name: 'Enable Git for this vault?' })).toBeVisible()
await page.keyboard.press('Escape')
await expect(page.getByRole('heading', { name: 'Enable Git for this vault?' })).not.toBeVisible()
await expect(page.getByTestId('status-missing-git')).toContainText('Git disabled')
await openCommandPalette(page)
await executeCommand(page, 'Initialize Git')
await expect(page.getByRole('heading', { name: 'Enable Git for this vault?' })).toBeVisible()
await page.getByRole('button', { name: 'Initialize Git' }).focus()
await page.keyboard.press('Enter')
await expect(page.getByRole('heading', { name: 'Enable Git for this vault?' })).not.toBeVisible()
await expect(page.getByTestId('status-missing-git')).not.toBeVisible()
await expect(page.getByTestId('status-pulse')).toBeVisible()
} finally {
removeFixtureVaultCopy(tempVaultDir)
}
})