# Python library imports from datetime import datetime # Library imports from flask import Flask from flask_sqlalchemy import SQLAlchemy # Import accounts blueprint from accounts import accounts # Import db from accounts.models import db # Import db models from accounts.models.dog import Dog from accounts.models.user import User from accounts.models.visit import Visit def create_app(): # Initialize flask app accounts_app = Flask(__name__, template_folder='templates') accounts_app.register_blueprint(accounts) accounts_app.config.from_pyfile('config.py') # Initialize db with flask app db.init_app(accounts_app) with accounts_app.app_context(): # Create db tables db.create_all() # Add test data to db session add_test_data(db) # Commit test data to db db.session.commit() return accounts_app def add_test_data(db): # Create test users test_user1 = User(username='test_user1', email='testing@email.com', address='123 Home Ln. Baltimore,MD 12345', password='12345') # Add test users to db session db.session.add(test_user1) # Commit test users to db db.session.commit() # Create test dogs test_dog1 = Dog(name='Lassey', breed='Golden Retreiver', owner_id=test_user1.id) test_dog2 = Dog(name='Rufus', breed='Basset Hound', owner_id=test_user1.id) # Add test dogs to db session db.session.add(test_dog1) db.session.add(test_dog2) # Commit test dogs to db db.session.commit() # Create test visits test_visit1 = Visit(date_time=datetime(2023,12,5,10,30), owner_id=test_user1.id, dog_id=test_dog2.id) # Add test visits to db session db.session.add(test_visit1) # Commit test visits to db db.session.commit()