172 lines
7.2 KiB
HTML
172 lines
7.2 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="pt-BR">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>Teste de Disponibilidade de Módulos</title>
|
|
<style>
|
|
body { font-family: Arial, sans-serif; margin: 20px; }
|
|
.test-result { margin: 10px 0; padding: 10px; border-radius: 5px; }
|
|
.success { background: #d4edda; color: #155724; border: 1px solid #c3e6cb; }
|
|
.error { background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; }
|
|
.info { background: #d1ecf1; color: #0c5460; border: 1px solid #bee5eb; }
|
|
.test-section { margin: 20px 0; padding: 15px; border: 1px solid #ddd; border-radius: 5px; }
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<h1>🔍 Teste de Disponibilidade de Módulos de Persistência</h1>
|
|
|
|
<div class="test-section">
|
|
<h3>Teste de Carregamento de Módulos</h3>
|
|
<div id="modulos-test"></div>
|
|
</div>
|
|
|
|
<div class="test-section">
|
|
<h3>Teste de Funcionalidade</h3>
|
|
<div id="funcionalidade-test"></div>
|
|
</div>
|
|
|
|
<div class="test-section">
|
|
<h3>Teste de Persistência</h3>
|
|
<div id="persistencia-test"></div>
|
|
</div>
|
|
|
|
<!-- Carregar módulos -->
|
|
<script src="js/core/admin-config-manager.js"></script>
|
|
<script src="js/core/backup-manager.js"></script>
|
|
<script src="js/core/toast-manager.js"></script>
|
|
|
|
<script>
|
|
function addResult(containerId, message, type = 'info') {
|
|
const container = document.getElementById(containerId);
|
|
const div = document.createElement('div');
|
|
div.className = `test-result ${type}`;
|
|
div.textContent = message;
|
|
container.appendChild(div);
|
|
}
|
|
|
|
function testarModulos() {
|
|
console.log('🚀 Iniciando teste de disponibilidade...');
|
|
|
|
// Testar disponibilidade das classes
|
|
const modulos = [
|
|
{ nome: 'AdminConfigManager', classe: typeof AdminConfigManager },
|
|
{ nome: 'BackupManager', classe: typeof BackupManager },
|
|
{ nome: 'ToastManager', classe: typeof ToastManager }
|
|
];
|
|
|
|
modulos.forEach(modulo => {
|
|
const disponivel = modulo.classe !== 'undefined';
|
|
addResult('modulos-test',
|
|
`${disponivel ? '✅' : '❌'} ${modulo.nome}: ${disponivel ? 'Disponível' : 'Não disponível'}`,
|
|
disponivel ? 'success' : 'error'
|
|
);
|
|
console.log(`${modulo.nome}: ${modulo.classe}`);
|
|
});
|
|
|
|
// Testar instâncias globais
|
|
const instancias = [
|
|
{ nome: 'window.adminConfigManager', objeto: window.adminConfigManager },
|
|
{ nome: 'window.backupManager', objeto: window.backupManager },
|
|
{ nome: 'window.toastManager', objeto: window.toastManager }
|
|
];
|
|
|
|
instancias.forEach(instancia => {
|
|
const disponivel = instancia.objeto !== undefined;
|
|
addResult('modulos-test',
|
|
`${disponivel ? '✅' : '❌'} ${instancia.nome}: ${disponivel ? 'Criada' : 'Não criada'}`,
|
|
disponivel ? 'success' : 'error'
|
|
);
|
|
});
|
|
}
|
|
|
|
function testarFuncionalidade() {
|
|
console.log('🔧 Testando funcionalidade...');
|
|
|
|
try {
|
|
// Testar AdminConfigManager
|
|
if (typeof AdminConfigManager !== 'undefined') {
|
|
const configManager = new AdminConfigManager();
|
|
const config = configManager.getConfig();
|
|
addResult('funcionalidade-test', '✅ AdminConfigManager: Funcional', 'success');
|
|
console.log('AdminConfigManager config:', config);
|
|
} else {
|
|
addResult('funcionalidade-test', '❌ AdminConfigManager: Não disponível', 'error');
|
|
}
|
|
|
|
// Testar BackupManager
|
|
if (typeof BackupManager !== 'undefined') {
|
|
const backupManager = new BackupManager();
|
|
addResult('funcionalidade-test', '✅ BackupManager: Funcional', 'success');
|
|
} else {
|
|
addResult('funcionalidade-test', '❌ BackupManager: Não disponível', 'error');
|
|
}
|
|
|
|
// Testar ToastManager
|
|
if (typeof ToastManager !== 'undefined') {
|
|
const toastManager = new ToastManager();
|
|
addResult('funcionalidade-test', '✅ ToastManager: Funcional', 'success');
|
|
|
|
// Mostrar um toast de teste
|
|
toastManager.info('🧪 Teste de ToastManager realizado com sucesso!');
|
|
} else {
|
|
addResult('funcionalidade-test', '❌ ToastManager: Não disponível', 'error');
|
|
}
|
|
|
|
} catch (error) {
|
|
addResult('funcionalidade-test', `❌ Erro: ${error.message}`, 'error');
|
|
console.error('Erro no teste de funcionalidade:', error);
|
|
}
|
|
}
|
|
|
|
function testarPersistencia() {
|
|
console.log('💾 Testando persistência...');
|
|
|
|
try {
|
|
if (typeof AdminConfigManager !== 'undefined') {
|
|
const configManager = new AdminConfigManager();
|
|
|
|
// Testar salvamento
|
|
const config = configManager.getConfig();
|
|
const nomeOriginal = config.appName;
|
|
config.appName = 'Teste de Persistência';
|
|
configManager.saveConfig(config);
|
|
|
|
// Verificar se salvou
|
|
const configSalva = configManager.getConfig();
|
|
const salvou = configSalva.appName === 'Teste de Persistência';
|
|
|
|
addResult('persistencia-test',
|
|
`${salvou ? '✅' : '❌'} Persistência: ${salvou ? 'Funcional' : 'Falhou'}`,
|
|
salvou ? 'success' : 'error'
|
|
);
|
|
|
|
// Restaurar valor original
|
|
config.appName = nomeOriginal;
|
|
configManager.saveConfig(config);
|
|
|
|
} else {
|
|
addResult('persistencia-test', '❌ AdminConfigManager não disponível', 'error');
|
|
}
|
|
|
|
} catch (error) {
|
|
addResult('persistencia-test', `❌ Erro: ${error.message}`, 'error');
|
|
console.error('Erro no teste de persistência:', error);
|
|
}
|
|
}
|
|
|
|
// Executar testes após carregamento
|
|
window.addEventListener('load', () => {
|
|
setTimeout(() => {
|
|
testarModulos();
|
|
setTimeout(() => {
|
|
testarFuncionalidade();
|
|
setTimeout(() => {
|
|
testarPersistencia();
|
|
}, 1000);
|
|
}, 1000);
|
|
}, 1000);
|
|
});
|
|
</script>
|
|
</body>
|
|
</html> |