fix: py3.8 compatibility

This commit is contained in:
283375 2024-08-06 12:32:52 +08:00
parent abc535c59f
commit ade0bcb2b7
Signed by: 283375
SSH Key Fingerprint: SHA256:UcX0qg6ZOSDOeieKPGokA5h7soykG61nz2uxuQgVLSk
3 changed files with 18 additions and 3 deletions

View File

@ -7,7 +7,7 @@ from arcaea_offline.constants.play_result import ScoreLowerLimits
class PlayResultCalculators:
@staticmethod
def score_possible_range(notes: int, pure: int, far: int) -> tuple[int, int]:
def score_possible_range(notes: int, pure: int, far: int) -> Tuple[int, int]:
"""
Returns the possible range of score based on the given values.

View File

@ -1,6 +1,5 @@
import sqlite3
from datetime import datetime
from importlib.resources import files
import pytest
from arcaea_offline.constants.enums.arcaea import (
@ -14,7 +13,7 @@ import tests.resources
class TestSt3Parser:
DB_PATH = files(tests.resources).joinpath("st3-test.db")
DB_PATH = tests.resources.get_resource("st3-test.db")
@property
def play_results(self):

View File

@ -0,0 +1,16 @@
import importlib.resources
import sys
def get_resource(path: str):
"""
A wrapper for `importlib.resources.files()` since it's not available in Python 3.8.
"""
if sys.version_info >= (3, 9, 0):
with importlib.resources.as_file(
importlib.resources.files(__name__).joinpath(path)
) as resource_path:
return resource_path
with importlib.resources.path(__name__, path) as resource_path:
return resource_path