import sqlite3 import os import sys if __name__ == "__main__": sys.path.append(os.getcwd()) from utils.file_utils import create_directory, remove_file def create_connection(path: str, filename: str): """ create a database connection to a SQLite database """ conn = None try: # Make the directory for the file to go into create_directory(path) print("Opening Database file and ensuring table integrity") conn = sqlite3.connect(path + filename) print("Database file open") # Execute creation scripts sql = open("scripts/create_tables.sql", "r") conn.executescript(sql.read()) print("Table creation complete") # Populate with test data if we are in Test Mode if os.environ.get("ENVIRON") == "test": sql = open("scripts/test_data.sql", "r") conn.executescript(sql.read()) except sqlite3.Error as e: print(e) finally: if conn: conn.close() def run(): """ Create the database for the application""" dir = r"./data/" db_name = r"wmgzon.db" # Check for test environ if os.environ.get("ENVIRON") == "test": # Remove the original test database print("TEST ENVIRONMENT ACTIVE") db_name = "test_" + db_name remove_file(dir + db_name) create_connection(dir, db_name) # Ensure a directory is created given a path to it if __name__ == "__main__": run()