Spaces:
Running
Running
""" | |
Simple test file for the ML Dataset & Code Generation Manager application. | |
This script checks basic aspects of the application structure and setup. | |
""" | |
import os | |
import sys | |
import pandas as pd | |
import numpy as np | |
from pathlib import Path | |
def test_directory_structure(): | |
"""Test if the required directories exist""" | |
# Ensure necessary directories exist | |
os.makedirs('database/data', exist_ok=True) | |
os.makedirs('assets', exist_ok=True) | |
os.makedirs('fine_tuned_models', exist_ok=True) | |
# Check if directories exist | |
assert Path("database").exists() and Path("database").is_dir(), "Database directory not found" | |
assert Path("assets").exists() and Path("assets").is_dir(), "Assets directory not found" | |
assert Path("fine_tuned_models").exists() and Path("fine_tuned_models").is_dir(), "Fine-tuned models directory not found" | |
print("✅ Directory structure test passed") | |
def test_css_file(): | |
"""Test if the CSS file exists""" | |
css_file = Path("assets/custom.css") | |
assert css_file.exists() and css_file.is_file(), "CSS file not found in assets directory" | |
print("✅ CSS file test passed") | |
def test_huggingface_config(): | |
"""Test if Hugging Face configuration file exists""" | |
config_file = Path("huggingface-spacefile") | |
assert config_file.exists() and config_file.is_file(), "Hugging Face configuration file not found" | |
print("✅ Hugging Face configuration test passed") | |
def test_streamlit_config(): | |
"""Test if Streamlit configuration exists""" | |
config_dir = Path(".streamlit") | |
config_file = config_dir / "config.toml" | |
assert config_dir.exists() and config_dir.is_dir(), ".streamlit directory not found" | |
assert config_file.exists() and config_file.is_file(), "config.toml file not found in .streamlit directory" | |
print("✅ Streamlit configuration test passed") | |
def test_sample_dataframe(): | |
"""Test creation of sample dataframes""" | |
# Create a sample dataframe | |
df = pd.DataFrame({ | |
"code": ["def hello():", "import numpy as np", "print('Hello')"], | |
"comment": ["Function greeting", "Import numpy library", "Print hello message"] | |
}) | |
# Test dataframe properties | |
assert len(df) == 3 | |
assert list(df.columns) == ["code", "comment"] | |
print("✅ Sample dataframe test passed") | |
def test_database_initialization(): | |
"""Test if database can be initialized""" | |
try: | |
from database import init_db | |
init_db() | |
assert Path("database/data/mlmanager.db").exists(), "Database file was not created" | |
print("✅ Database initialization test passed") | |
except ImportError: | |
print("⚠️ Could not import database module") | |
assert False, "Database module not found" | |
def run_tests(): | |
"""Run all tests""" | |
print("Running tests for ML Dataset & Code Generation Manager...") | |
test_directory_structure() | |
test_css_file() | |
test_huggingface_config() | |
test_streamlit_config() | |
test_sample_dataframe() | |
test_database_initialization() | |
print("\nAll tests passed! ✅") | |
def test_components_existence(): | |
"""Test if core components directories exist""" | |
# Check for components directory | |
components_dir = Path("components") | |
assert components_dir.exists() and components_dir.is_dir(), "Components directory not found" | |
# Check for fine_tuning subdirectory | |
fine_tuning_dir = components_dir / "fine_tuning" | |
assert fine_tuning_dir.exists() and fine_tuning_dir.is_dir(), "Fine-tuning components directory not found" | |
# Check for essential component files | |
assert (components_dir / "code_quality.py").exists(), "Code quality component not found" | |
assert (components_dir / "dataset_uploader.py").exists(), "Dataset uploader component not found" | |
print("✅ Components existence test passed") | |
# Run the tests if executed directly | |
if __name__ == '__main__': | |
run_tests() |