mirror of
https://github.com/Syngnat/GoNavi.git
synced 2026-07-21 12:51:47 +08:00
- 自动提交延迟选项改为多语言完整文案,避免短标签语义不清 - 收窄并校准 V2 工具栏事务下拉宽度,兼顾不截断与紧凑布局 - 事务模式 Select 展开时自动隐藏 DBeaver 参考 Tooltip,避免浮层互相遮挡 - 补充事务设置行为测试和布局守护测试
56 lines
1.8 KiB
TypeScript
56 lines
1.8 KiB
TypeScript
import { readFileSync } from 'node:fs';
|
|
import { describe, expect, it } from 'vitest';
|
|
|
|
const settingsSource = readFileSync(new URL('./QueryEditorTransactionSettings.tsx', import.meta.url), 'utf8');
|
|
const toolbarSource = readFileSync(new URL('./QueryEditorTransactionToolbar.tsx', import.meta.url), 'utf8');
|
|
|
|
const settingsLegacyLiterals = [
|
|
'立即',
|
|
'参考 DBeaver',
|
|
'手动',
|
|
'自动',
|
|
];
|
|
|
|
const toolbarLegacyLiterals = [
|
|
'后自动提交',
|
|
'自动提交中',
|
|
'提交',
|
|
'回滚',
|
|
];
|
|
|
|
const requiredKeys = [
|
|
'query_editor.transaction.delay.immediate',
|
|
'query_editor.transaction.delay.immediate_commit',
|
|
'query_editor.transaction.delay.seconds_commit',
|
|
'query_editor.transaction.mode.tooltip',
|
|
'query_editor.transaction.mode.manual',
|
|
'query_editor.transaction.mode.auto',
|
|
'query_editor.transaction.status.auto_commit_countdown',
|
|
'query_editor.transaction.status.auto_committing',
|
|
'query_editor.transaction.action.commit',
|
|
'query_editor.transaction.action.commit_with_count',
|
|
'query_editor.transaction.action.rollback',
|
|
];
|
|
|
|
describe('QueryEditor transaction i18n', () => {
|
|
it('uses localized keys for transaction settings and toolbar chrome', () => {
|
|
for (const source of [settingsSource, toolbarSource]) {
|
|
expect(source).toContain("import { useOptionalI18n } from '../i18n/provider';");
|
|
expect(source).toContain('const i18n = useOptionalI18n();');
|
|
expect(source).toContain('const t = i18n?.t ?? defaultTranslate;');
|
|
}
|
|
|
|
for (const key of requiredKeys) {
|
|
expect(`${settingsSource}\n${toolbarSource}`).toContain(key);
|
|
}
|
|
|
|
for (const literal of settingsLegacyLiterals) {
|
|
expect(settingsSource).not.toContain(literal);
|
|
}
|
|
|
|
for (const literal of toolbarLegacyLiterals) {
|
|
expect(toolbarSource).not.toContain(literal);
|
|
}
|
|
});
|
|
});
|