mirror of
https://gitlab.com/soapbox-pub/ditto.git
synced 2025-12-06 11:29:46 +00:00
rewrite and expand tests
This commit is contained in:
parent
86e816ae67
commit
b6e41f4eaf
1 changed files with 66 additions and 25 deletions
|
|
@ -1,28 +1,69 @@
|
||||||
import { detectLanguage } from '@/utils/language.ts';
|
import { detectLanguage } from '@/utils/language.ts';
|
||||||
import { assertEquals } from '@std/assert';
|
import { assertEquals, assertNotEquals } from '@std/assert';
|
||||||
|
import { Conf } from '@/config.ts';
|
||||||
|
|
||||||
Deno.test('Detect English language', () => {
|
Deno.test('Tests for language detection', async (t) => {
|
||||||
assertEquals(detectLanguage(``, 0.90), undefined);
|
await t.step('Empty string should return undefined', async () => {
|
||||||
assertEquals(detectLanguage(`Good morning my fellow friends`, 0.90), 'en');
|
assertEquals(await detectLanguage(``, 0.90), undefined);
|
||||||
|
});
|
||||||
|
|
||||||
|
await t.step('Regular English string should be detected', async () => {
|
||||||
|
assertEquals(await detectLanguage(`Good morning my fellow friends`, 0.90), 'en');
|
||||||
|
});
|
||||||
|
|
||||||
|
await t.step('nostr event id should be ignored', async () => {
|
||||||
assertEquals(
|
assertEquals(
|
||||||
detectLanguage(
|
await detectLanguage(
|
||||||
`Would you listen to Michael Jackson's songs?\n\nnostr:nevent1qvzqqqqqqypzqprpljlvcnpnw3pejvkkhrc3y6wvmd7vjuad0fg2ud3dky66gaxaqyvhwumn8ghj7cm0vfexzen4d4sjucm0d5hhyetvv9usqg8htx8xcjq7ffrzxu7nrhlr8vljcv6gpmet0auy87mpj6djxk4myqha02kp`,
|
`Would you listen to Michael Jackson's songs?\n\nnostr:nevent1qvzqqqqqqypzqprpljlvcnpnw3pejvkkhrc3y6wvmd7vjuad0fg2ud3dky66gaxaqyvhwumn8ghj7cm0vfexzen4d4sjucm0d5hhyetvv9usqg8htx8xcjq7ffrzxu7nrhlr8vljcv6gpmet0auy87mpj6djxk4myqha02kp`,
|
||||||
0.90,
|
0.90,
|
||||||
),
|
),
|
||||||
'en',
|
'en',
|
||||||
);
|
);
|
||||||
|
});
|
||||||
|
|
||||||
|
await t.step('URLs should be ignored', async () => {
|
||||||
assertEquals(
|
assertEquals(
|
||||||
detectLanguage(
|
await detectLanguage(
|
||||||
`https://youtu.be/FxppefYTA2I?si=grgEpbEhFu_-3V_uhttps://youtu.be/FxppefYTA2I?si=grgEpbEhFu_-3V_uhttps://youtu.be/FxppefYTA2I?si=grgEpbEhFu_-3V_uhttps://youtu.be/FxppefYTA2I?si=grgEpbEhFu_-3V_uWould you listen to Michael Jackson's songs?\n\nnostr:nevent1qvzqqqqqqypzqprpljlvcnpnw3pejvkkhrc3y6wvmd7vjuad0fg2ud3dky66gaxaqyvhwumn8ghj7cm0vfexzen4d4sjucm0d5hhyetvv9usqg8htx8xcjq7ffrzxu7nrhlr8vljcv6gpmet0auy87mpj6djxk4myqha02kp`,
|
`https://youtu.be/FxppefYTA2I?si=grgEpbEhFu_-3V_uhttps://youtu.be/FxppefYTA2I?si=grgEpbEhFu_-3V_uhttps://youtu.be/FxppefYTA2I?si=grgEpbEhFu_-3V_uhttps://youtu.be/FxppefYTA2I?si=grgEpbEhFu_-3V_uWould you listen to Michael Jackson's songs?\n\nnostr:nevent1qvzqqqqqqypzqprpljlvcnpnw3pejvkkhrc3y6wvmd7vjuad0fg2ud3dky66gaxaqyvhwumn8ghj7cm0vfexzen4d4sjucm0d5hhyetvv9usqg8htx8xcjq7ffrzxu7nrhlr8vljcv6gpmet0auy87mpj6djxk4myqha02kp`,
|
||||||
0.90,
|
0.90,
|
||||||
),
|
),
|
||||||
'en',
|
'en',
|
||||||
);
|
);
|
||||||
|
});
|
||||||
|
|
||||||
|
await t.step('Emoji should be ignored', async () => {
|
||||||
assertEquals(
|
assertEquals(
|
||||||
detectLanguage(
|
await detectLanguage(
|
||||||
`https://youtu.be/FxppefYTA2I?si=grgEpbEhFu_-3V_u 😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎ https://youtu.be/FxppefYTA2I?si=grgEpbEhFu_-3V_uhttps://youtu.be/FxppefYTA2I?si=grgEpbEhFu_-3V_uhttps://youtu.be/FxppefYTA2I?si=grgEpbEhFu_-3V_u Would you listen to Michael Jackson's songs?\n\nnostr:nevent1qvzqqqqqqypzqprpljlvcnpnw3pejvkkhrc3y6wvmd7vjuad0fg2ud3dky66gaxaqyvhwumn8ghj7cm0vfexzen4d4sjucm0d5hhyetvv9usqg8htx8xcjq7ffrzxu7nrhlr8vljcv6gpmet0auy87mpj6djxk4myqha02kp`,
|
`https://youtu.be/FxppefYTA2I?si=grgEpbEhFu_-3V_u 😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎😂💯♡⌨︎ https://youtu.be/FxppefYTA2I?si=grgEpbEhFu_-3V_uhttps://youtu.be/FxppefYTA2I?si=grgEpbEhFu_-3V_uhttps://youtu.be/FxppefYTA2I?si=grgEpbEhFu_-3V_u Would you listen to Michael Jackson's songs?\n\nnostr:nevent1qvzqqqqqqypzqprpljlvcnpnw3pejvkkhrc3y6wvmd7vjuad0fg2ud3dky66gaxaqyvhwumn8ghj7cm0vfexzen4d4sjucm0d5hhyetvv9usqg8htx8xcjq7ffrzxu7nrhlr8vljcv6gpmet0auy87mpj6djxk4myqha02kp`,
|
||||||
0.90,
|
0.90,
|
||||||
),
|
),
|
||||||
'en',
|
'en',
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
await t.step('The horrific problem sentence', async () => {
|
||||||
|
switch (Conf.languageDetector) {
|
||||||
|
case 'lingua':
|
||||||
|
assertEquals(
|
||||||
|
await detectLanguage(`It may die when I die, and that's okay. It's my earnings.`, 0.90),
|
||||||
|
'en',
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
assertNotEquals(
|
||||||
|
await detectLanguage(`It may die when I die, and that's okay. It's my earnings.`, 0.90),
|
||||||
|
'en',
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
await t.step('The horrific problem sentence', async () => {
|
||||||
|
const tester = Conf.languageDetector === 'lingua' ? assertEquals : assertNotEquals;
|
||||||
|
tester(await detectLanguage(`It may die when I die, and that's okay. It's my earnings.`, 0.90), 'en');
|
||||||
|
});
|
||||||
|
//
|
||||||
|
await t.step('Should detect Hindi sentences', async () => {
|
||||||
|
assertEquals(await detectLanguage(`मै डिट्टो की नयी अनुवाद सुविधा को आज़मा रहा हूँ`, 0.80), 'hi');
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue