// === TEST AVEC DRAGON'S PEARL === // Simuler l'environnement browser global.window = {}; global.document = {}; global.logSh = (msg, level) => console.log(`[${level}] ${msg}`); // Charger les modules const fs = require('fs'); const path = require('path'); // Charger le système de compatibilité const compatibilityCode = fs.readFileSync(path.join(__dirname, 'js/core/content-game-compatibility.js'), 'utf8'); eval(compatibilityCode); // Charger le contenu Dragon's Pearl const dragonPearlCode = fs.readFileSync(path.join(__dirname, 'js/content/chinese-long-story.js'), 'utf8'); eval(dragonPearlCode); console.log('🐉 Test avec Dragon\'s Pearl\n'); try { const checker = new window.ContentGameCompatibility(); const dragonPearlContent = window.ContentModules.ChineseLongStory; console.log('📦 Contenu Dragon\'s Pearl:'); console.log(` Nom: ${dragonPearlContent.name}`); console.log(` Description: ${dragonPearlContent.description}`); console.log(` Difficulté: ${dragonPearlContent.difficulty}`); console.log(` Vocabulaire: ${Object.keys(dragonPearlContent.vocabulary || {}).length} mots`); console.log(` Story: ${dragonPearlContent.story ? 'Oui' : 'Non'}`); console.log('\n🎮 Tests de compatibilité:'); const games = ['whack-a-mole', 'memory-match', 'quiz-game', 'fill-the-blank', 'text-reader', 'adventure-reader']; games.forEach(game => { const result = checker.checkCompatibility(dragonPearlContent, game); const status = result.compatible ? '✅' : '❌'; console.log(` ${status} ${game}: ${result.score}% - ${result.reason}`); }); console.log('\n💡 Suggestions pour jeux incompatibles:'); games.forEach(game => { const result = checker.checkCompatibility(dragonPearlContent, game); if (!result.compatible) { const suggestions = checker.getImprovementSuggestions(dragonPearlContent, game); if (suggestions.length > 0) { console.log(` 📝 ${game}:`); suggestions.forEach(suggestion => { console.log(` 💡 ${suggestion}`); }); } } }); } catch (error) { console.error('❌ Erreur:', error.message); console.error(error.stack); }