confluent/ConfluentTranslator/tests/unit/test-pronoun-system.js
StillHammer 4b0f916d1c Restructuration complète du projet ConfluentTranslator
- Nouvelle architecture modulaire avec src/api, src/core, src/utils
- Séparation claire docs/ (admin, changelog, dev, security) et tests/ (unit, integration, scripts)
- server.js devient un simple point d'entrée
- Ajout de STRUCTURE.md documentant l'architecture
- Archivage ancien-confluent/ avec générateur de lexique complet

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 23:28:12 +08:00

56 lines
1.6 KiB
JavaScript

const { tokenizeFrench, simpleLemmatize } = require('./contextAnalyzer');
const { loadAllLexiques } = require('./lexiqueLoader');
const path = require('path');
const baseDir = path.join(__dirname, '..');
const lexiques = loadAllLexiques(baseDir);
console.log('\n=== TEST SYSTÈME DE PRONOMS ===\n');
const tests = [
'je parle',
'tu parles',
'il parle',
'elle parle',
'nous parlons',
'vous parlez',
'ils parlent',
'elles parlent'
];
tests.forEach(phrase => {
const tokens = tokenizeFrench(phrase);
console.log(`"${phrase}" → tokens: [${tokens.join(', ')}]`);
tokens.forEach(token => {
const lemmas = simpleLemmatize(token);
const found = lexiques.ancien.dictionnaire[token];
if (found) {
const conf = found.traductions[0]?.confluent || '?';
console.log(` ✅ "${token}" → ${conf}`);
} else {
// Vérifier les lemmes
let foundLemma = false;
for (const lemma of lemmas) {
const entry = lexiques.ancien.dictionnaire[lemma];
if (entry) {
const conf = entry.traductions[0]?.confluent || '?';
console.log(` ✅ "${token}" (lemme: "${lemma}") → ${conf}`);
foundLemma = true;
break;
}
}
if (!foundLemma) {
console.log(` ❌ "${token}" → NON TROUVÉ`);
}
}
});
console.log('');
});
console.log('\n=== CONSTRUCTION PRONOMS PLURIELS ===\n');
console.log('nous = miki (je) + su (pluriel) = mikisu');
console.log('vous = sinu (tu) + su (pluriel) = sinusu');
console.log('ils/elles = tani (il/elle) + su (pluriel) = tanisu');