60 lines
1.9 KiB
Python
60 lines
1.9 KiB
Python
#!/usr/bin/env python
|
|
# -*- coding: utf-8 -*-
|
|
|
|
import sqlite3
|
|
import os
|
|
import requests
|
|
import time
|
|
|
|
print("Systades Anwendungstest")
|
|
print("=======================")
|
|
|
|
# Prüfen, ob die Datenbank existiert
|
|
db_path = 'systades.db'
|
|
if not os.path.exists(db_path):
|
|
print(f"Datenbank {db_path} existiert nicht.")
|
|
exit(1)
|
|
|
|
# Datenbankprüfung
|
|
conn = sqlite3.connect(db_path)
|
|
cursor = conn.cursor()
|
|
|
|
# Prüfen, ob die User-Tabelle existiert und Benutzer enthält
|
|
cursor.execute("SELECT COUNT(*) FROM user;")
|
|
user_count = cursor.fetchone()[0]
|
|
print(f"Anzahl der Benutzer in der Datenbank: {user_count}")
|
|
|
|
if user_count == 0:
|
|
print("WARNUNG: Keine Benutzer in der Datenbank gefunden!")
|
|
print("Bitte führen Sie das Skript 'create_default_users.py' aus, um Standardbenutzer zu erstellen.")
|
|
conn.close()
|
|
exit(1)
|
|
|
|
# Tabellenschema prüfen
|
|
cursor.execute("PRAGMA table_info(user);")
|
|
columns = cursor.fetchall()
|
|
column_names = [column[1] for column in columns]
|
|
print(f"Spalten in der User-Tabelle: {', '.join(column_names)}")
|
|
|
|
# Überprüfen, ob die password-Spalte existiert
|
|
if 'password' not in column_names:
|
|
print("FEHLER: Die Spalte 'password' fehlt in der Tabelle 'user'!")
|
|
print("Bitte führen Sie das Skript 'fix_user_table.py' aus, um die Datenbank zu reparieren.")
|
|
conn.close()
|
|
exit(1)
|
|
|
|
# Benutzer für Testlogin abrufen
|
|
cursor.execute("SELECT username, email FROM user LIMIT 1;")
|
|
test_user = cursor.fetchone()
|
|
if test_user:
|
|
print(f"Testbenutzer für Login: {test_user[0]} (E-Mail: {test_user[1]})")
|
|
else:
|
|
print("FEHLER: Konnte keinen Testbenutzer abrufen.")
|
|
|
|
conn.close()
|
|
|
|
print("\nDie Datenbank scheint korrekt konfiguriert zu sein.")
|
|
print("Sie können nun die Anwendung starten und sich mit den folgenden Zugangsdaten anmelden:")
|
|
print(" Admin: username=admin, password=admin")
|
|
print(" User: username=user, password=user")
|
|
print("\nTest abgeschlossen.") |