91 lines
3.6 KiB
Python
91 lines
3.6 KiB
Python
import sys
|
|
import os
|
|
|
|
# Přidání adresáře src do sys.path, aby bylo možné importovat moduly
|
|
sys.path.insert(0, os.path.join(os.path.dirname(__file__), '..', 'src'))
|
|
|
|
import rate_reporter
|
|
import database
|
|
|
|
def test_yearly_report():
|
|
"""Test: Generování ročního reportu."""
|
|
print("Test: Generování ročního reportu...")
|
|
|
|
# Inicializujeme databázi
|
|
database.init_db()
|
|
|
|
# Vygenerujeme report pro rok 2020 a měnu USD
|
|
filepath = rate_reporter.generate_yearly_report(2020, "USD", output_dir="data")
|
|
|
|
if filepath and os.path.exists(filepath):
|
|
print(f"Roční report byl úspěšně vygenerován: {filepath}")
|
|
# Zkontrolujeme, zda soubor není prázdný
|
|
if os.path.getsize(filepath) > 0:
|
|
print("Roční report není prázdný.")
|
|
# Zobrazíme prvních několik řádků souboru
|
|
with open(filepath, 'r', encoding='utf-8') as f:
|
|
lines = f.readlines()
|
|
print("Prvních 5 řádků reportu:")
|
|
for line in lines[:5]:
|
|
print(f" {line.strip()}")
|
|
else:
|
|
print("Varování: Roční report je prázdný.")
|
|
else:
|
|
print("Test selhal: Roční report nebyl vygenerován.")
|
|
|
|
def test_monthly_report():
|
|
"""Test: Generování měsíčního reportu."""
|
|
print("\nTest: Generování měsíčního reportu...")
|
|
|
|
# Vygenerujeme report pro červenec 2020 a měnu USD
|
|
filepath = rate_reporter.generate_monthly_report(2020, 7, "USD", output_dir="data")
|
|
|
|
if filepath and os.path.exists(filepath):
|
|
print(f"Měsíční report byl úspěšně vygenerován: {filepath}")
|
|
# Zkontrolujeme, zda soubor není prázdný
|
|
if os.path.getsize(filepath) > 0:
|
|
print("Měsíční report není prázdný.")
|
|
# Zobrazíme prvních několik řádků souboru
|
|
with open(filepath, 'r', encoding='utf-8') as f:
|
|
lines = f.readlines()
|
|
print("Prvních 5 řádků reportu:")
|
|
for line in lines[:5]:
|
|
print(f" {line.strip()}")
|
|
else:
|
|
print("Varování: Měsíční report je prázdný.")
|
|
else:
|
|
print("Test selhal: Měsíční report nebyl vygenerován.")
|
|
|
|
def test_period_report():
|
|
"""Test: Generování reportu za období."""
|
|
print("\nTest: Generování reportu za období...")
|
|
|
|
# Vygenerujeme report pro období 1.7.2020 - 31.7.2020 a měnu USD
|
|
filepath = rate_reporter.generate_period_report("01.07.2020", "31.07.2020", "USD", output_dir="data")
|
|
|
|
if filepath and os.path.exists(filepath):
|
|
print(f"Report za období byl úspěšně vygenerován: {filepath}")
|
|
# Zkontrolujeme, zda soubor není prázdný
|
|
if os.path.getsize(filepath) > 0:
|
|
print("Report za období není prázdný.")
|
|
# Zobrazíme prvních několik řádků souboru
|
|
with open(filepath, 'r', encoding='utf-8') as f:
|
|
lines = f.readlines()
|
|
print("Prvních 5 řádků reportu:")
|
|
for line in lines[:5]:
|
|
print(f" {line.strip()}")
|
|
else:
|
|
print("Varování: Report za období je prázdný.")
|
|
else:
|
|
print("Test selhal: Report za období nebyl vygenerován.")
|
|
|
|
def run_all_tests():
|
|
"""Spustí všechny testy."""
|
|
print("Spouštím testy generování reportů o kurzech...")
|
|
test_yearly_report()
|
|
test_monthly_report()
|
|
test_period_report()
|
|
print("\nTesty generování reportů o kurzech dokončeny!")
|
|
|
|
if __name__ == "__main__":
|
|
run_all_tests() |