Compare commits

..

No commits in common. "0d5e21a90e79bede919c8dfa67d6c8365a4531ae" and "e295e58388480b0cdba48629a3352bd981cc369a" have entirely different histories.

7 changed files with 36 additions and 59 deletions

View File

@ -1,15 +1,3 @@
from .arcaea import ( from .clear_type import ArcaeaPlayResultClearType
ArcaeaLanguage, from .modifier import ArcaeaPlayResultModifier
ArcaeaPlayResultClearType, from .rating_class import ArcaeaRatingClass
ArcaeaPlayResultModifier,
ArcaeaRatingClass,
ArcaeaSongSide,
)
__all__ = [
"ArcaeaLanguage",
"ArcaeaPlayResultClearType",
"ArcaeaPlayResultModifier",
"ArcaeaRatingClass",
"ArcaeaSongSide",
]

View File

@ -1,37 +0,0 @@
from enum import Enum, IntEnum
class ArcaeaRatingClass(IntEnum):
PAST = 0
PRESENT = 1
FUTURE = 2
BEYOND = 3
ETERNAL = 4
class ArcaeaSongSide(IntEnum):
LIGHT = 0
CONFLICT = 1
COLORLESS = 2
class ArcaeaPlayResultModifier(IntEnum):
NORMAL = 0
EASY = 1
HARD = 2
class ArcaeaPlayResultClearType(IntEnum):
TRACK_LOST = 0
NORMAL_CLEAR = 1
FULL_RECALL = 2
PURE_MEMORY = 3
HARD_CLEAR = 4
EASY_CLEAR = 5
class ArcaeaLanguage(Enum):
JA = "ja"
KO = "ko"
ZH_HANT = "zh-Hant"
ZH_HANS = "zh-Hans"

View File

@ -0,0 +1,10 @@
from enum import IntEnum
class ArcaeaPlayResultClearType(IntEnum):
TRACK_LOST = 0
NORMAL_CLEAR = 1
FULL_RECALL = 2
PURE_MEMORY = 3
HARD_CLEAR = 4
EASY_CLEAR = 5

View File

@ -0,0 +1,7 @@
from enum import IntEnum
class ArcaeaPlayResultModifier(IntEnum):
NORMAL = 0
EASY = 1
HARD = 2

View File

@ -0,0 +1,9 @@
from enum import IntEnum
class ArcaeaRatingClass(IntEnum):
PAST = 0
PRESENT = 1
FUTURE = 2
BEYOND = 3
ETERNAL = 4

View File

@ -1,6 +1,6 @@
import pytest import pytest
from sqlalchemy import create_engine from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker from sqlalchemy.orm import Session, sessionmaker
# region sqlalchemy fixtures # region sqlalchemy fixtures
# from https://medium.com/@vittorio.camisa/agile-database-integration-tests-with-python-sqlalchemy-and-factory-boy-6824e8fe33a1 # from https://medium.com/@vittorio.camisa/agile-database-integration-tests-with-python-sqlalchemy-and-factory-boy-6824e8fe33a1

View File

@ -1,7 +1,7 @@
from typing import Optional from typing import Optional
from sqlalchemy import text from sqlalchemy import text
from sqlalchemy.orm import DeclarativeBase, Mapped, Session, mapped_column from sqlalchemy.orm import DeclarativeBase, Mapped, mapped_column
from arcaea_offline.constants.enums import ( from arcaea_offline.constants.enums import (
ArcaeaPlayResultClearType, ArcaeaPlayResultClearType,
@ -47,16 +47,16 @@ class ModifierTestModel(Base):
class TestCustomTypes: class TestCustomTypes:
def _common_test_method(self, session: Session, obj: Base, value_in_db): def _common_test_method(self, db_session, obj: Base, value_in_db):
""" """
This method stores the `obj` into the given `session`, This method stores the `obj` into the given `db_session`,
then fetches the raw value of `obj.value` from database, then fetches the raw value of `obj.value` from database,
and asserts that the value is equal to `value_in_db`. and asserts that the value is equal to `value_in_db`.
""" """
session.add(obj) db_session.add(obj)
session.commit() db_session.commit()
exec_result = session.execute( exec_result = db_session.execute(
text( text(
f"SELECT value FROM {obj.__tablename__} WHERE id = {obj.id}" # type: ignore f"SELECT value FROM {obj.__tablename__} WHERE id = {obj.id}" # type: ignore
) )