Refactoring: auth tests pass
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
from sqlalchemy import Column, Float, ForeignKey, Integer, String
|
||||
from sqlalchemy import Column, Float, ForeignKey, Integer, String, Boolean
|
||||
from sqlalchemy.orm import relationship
|
||||
|
||||
from src.database import Base
|
||||
@@ -12,7 +12,8 @@ class User(Base):
|
||||
user_id = Column(Integer, primary_key=True, index=True)
|
||||
username = Column(String, unique=True, index=True, nullable=False)
|
||||
hashed_password = Column(String, nullable=False)
|
||||
avatar = Column(String, nullable=False)
|
||||
avatar_index = Column(Integer, nullable=False)
|
||||
playtime = Column(Float, nullable=False)
|
||||
|
||||
high_scores = relationship(
|
||||
"HighScore", back_populates="owner", cascade="all, delete", lazy="dynamic"
|
||||
@@ -29,6 +30,7 @@ class HighScore(Base):
|
||||
|
||||
high_score_id = Column(Integer, primary_key=True, index=True)
|
||||
score_value = Column(Float, nullable=False)
|
||||
time = Column(String, nullable=False)
|
||||
minigame = Column(String, nullable=False)
|
||||
owner_id = Column(Integer, ForeignKey("users.user_id"))
|
||||
owner = relationship("User", back_populates="high_scores")
|
||||
@@ -40,7 +42,22 @@ class CourseProgress(Base):
|
||||
__tablename__ = "course_progress"
|
||||
|
||||
course_progress_id = Column(Integer, primary_key=True, index=True)
|
||||
progress_value = Column(Float, nullable=False)
|
||||
progress = Column(Float, nullable=False)
|
||||
course = Column(String, nullable=False)
|
||||
owner_id = Column(Integer, ForeignKey("users.user_id"))
|
||||
owner = relationship("User", back_populates="course_progress")
|
||||
learnables = relationship("LearnableProgress", back_populates="course")
|
||||
|
||||
|
||||
class LearnableProgress(Base):
|
||||
"""The database model for learnable progress"""
|
||||
|
||||
__tablename__ = "learnable_progress"
|
||||
|
||||
learnable_progress_id = Column(Integer, primary_key=True, index=True)
|
||||
index = Column(Integer, nullable=False)
|
||||
in_use = Column(Boolean, nullable=False)
|
||||
name = Column(String, nullable=False)
|
||||
progress = Column(Float, nullable=False)
|
||||
course_id = Column(Integer, ForeignKey("course_progress.course_progress_id"))
|
||||
course = relationship("CourseProgress", back_populates="learnables")
|
||||
Reference in New Issue
Block a user