from pathlib import Path
import sys

sys.path.insert(0, str(Path(__file__).resolve().parent.parent))

from backend.db import DB_FILE, get_connection, init_db

if __name__ == "__main__":
    if DB_FILE.exists():
        DB_FILE.unlink()

    init_db()

    assert DB_FILE.exists(), "Database file was not created"

    with get_connection() as conn:
        user = conn.execute("SELECT username FROM users WHERE username = ?", ("user",)).fetchone()
        assert user is not None and user[0] == "user", "Default user was not created"

        board = conn.execute(
            "SELECT board_json FROM boards WHERE user_id = (SELECT id FROM users WHERE username = ?)",
            ("user",),
        ).fetchone()
        assert board is not None, "Default board data was not created"

    print("backend database initialization test passed")
