def init_database(test_client): # Create the database and the database table db.create_all() # Insert user data user1 = User(username='******', password='******') user2 = User(username='******', password='******') db.session.add(user1) db.session.add(user2) # Commit the changes for the users db.session.commit() yield # this is where the testing happens! db.drop_all()
ADMIN = 1 USER = 2 class User(db.Model, UserMixin): id = Column(Integer, primary_key=True, autoincrement=True) name = Column(String(50), nullable=False) username = Column(String(50), nullable=False) password = Column(String(50), nullable=False) active = Column(Boolean, default=True) use_role = Column(Enum(UserRole), default=UserRole.USER) products = relationship(Product, backref='user', lazy=True) class Receipt(db.Model): id = Column(Integer, primary_key=True, autoincrement=True) created_date = Column(DateTime, default=datetime.now()) updated_date = Column(DateTime, default=datetime.now()) details = relationship('ReceiptDetail', backref='receipt', lazy=True) class ReceiptDetail(db.Model): product_id = Column(Integer, ForeignKey(Product.id), primary_key=True) receipt_id = Column(Integer, ForeignKey(Receipt.id), primary_key=True) quantity = Column(Integer, default=0) unit_price = Column(Float, default=0) if __name__ == '__main__': db.create_all()