50 lines
1.8 KiB
TypeScript
50 lines
1.8 KiB
TypeScript
|
|
import test from 'node:test';
|
||
|
|
import assert from 'node:assert/strict';
|
||
|
|
|
||
|
|
import en from '../locales/en.ts';
|
||
|
|
import ru from '../locales/ru.ts';
|
||
|
|
import es from '../locales/es.ts';
|
||
|
|
import zhCN from '../locales/zh-CN.ts';
|
||
|
|
import zhTW from '../locales/zh-TW.ts';
|
||
|
|
|
||
|
|
const keys = [
|
||
|
|
'cloudSync.convergent.title',
|
||
|
|
'cloudSync.convergent.experimental',
|
||
|
|
'cloudSync.convergent.desc',
|
||
|
|
'cloudSync.convergent.active',
|
||
|
|
'cloudSync.convergent.paused',
|
||
|
|
'cloudSync.convergent.enabled',
|
||
|
|
'cloudSync.convergent.preview.title',
|
||
|
|
'cloudSync.convergent.preview.entities',
|
||
|
|
'cloudSync.convergent.preview.providers',
|
||
|
|
'cloudSync.convergent.preview.conflicts',
|
||
|
|
'cloudSync.convergent.preview.compatibility',
|
||
|
|
'cloudSync.convergent.preview.confirm',
|
||
|
|
'cloudSync.convergent.preview.status.ready',
|
||
|
|
'cloudSync.convergent.preview.status.empty',
|
||
|
|
'cloudSync.convergent.preview.status.unavailable',
|
||
|
|
'cloudSync.convergent.preview.status.blocked',
|
||
|
|
'cloudSync.convergent.preview.schema',
|
||
|
|
'cloudSync.convergent.field.presence',
|
||
|
|
'cloudSync.convergent.field.position',
|
||
|
|
'cloudSync.convergent.conflicts.title',
|
||
|
|
'cloudSync.convergent.conflict.empty',
|
||
|
|
'cloudSync.convergent.conflict.secretSet',
|
||
|
|
'cloudSync.convergent.conflict.current',
|
||
|
|
'cloudSync.convergent.conflict.choose',
|
||
|
|
'cloudSync.convergent.conflict.resolved',
|
||
|
|
'cloudSync.convergent.downgrade.desc',
|
||
|
|
'cloudSync.convergent.downgrade.button',
|
||
|
|
'cloudSync.convergent.downgrade.confirm',
|
||
|
|
'cloudSync.convergent.downgrade.done',
|
||
|
|
] as const;
|
||
|
|
|
||
|
|
test('convergent sync copy exists in every bundled locale', () => {
|
||
|
|
for (const [locale, messages] of Object.entries({ en, ru, es, zhCN, zhTW })) {
|
||
|
|
for (const key of keys) {
|
||
|
|
assert.equal(typeof messages[key], 'string', `${locale} is missing ${key}`);
|
||
|
|
assert.notEqual(messages[key], '', `${locale} has empty ${key}`);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
});
|