From 0c54d93fd5ca2830d0ebd1f5dc87c26718357e86 Mon Sep 17 00:00:00 2001 From: Alexander Smolin <88573504+emptybutton@users.noreply.github.com> Date: Wed, 23 Jul 2025 12:06:54 +0700 Subject: [PATCH] ref(`application`): make one usecase for `game` (#23) --- src/ttt/application/game/common/__init__.py | 0 src/ttt/application/game/common/ports/__init__.py | 0 src/ttt/application/game/game/cancel_game.py | 4 ++-- src/ttt/application/game/game/make_move_in_game.py | 6 +++--- .../game/{common => game}/ports/game_ai_gateway.py | 0 .../application/game/{common => game}/ports/game_views.py | 0 src/ttt/application/game/{common => game}/ports/games.py | 0 .../game/{common => game}/ports/waiting_locations.py | 0 src/ttt/application/game/game/start_game.py | 6 +++--- .../game/{game_with_ai => game}/start_game_with_ai.py | 8 ++++---- .../wait_ai_type_to_start_game_with_ai.py | 2 +- src/ttt/application/game/game/wait_game.py | 4 ++-- src/ttt/application/game/game_with_ai/__init__.py | 0 src/ttt/infrastructure/adapters/game_ai_gateway.py | 2 +- src/ttt/infrastructure/adapters/games.py | 2 +- src/ttt/infrastructure/adapters/waiting_locations.py | 2 +- src/ttt/main/aiogram/di.py | 8 ++++---- src/ttt/main/common/di.py | 6 +++--- src/ttt/presentation/adapters/game_views.py | 2 +- src/ttt/presentation/aiogram/game/routes/all.py | 6 +++--- .../routes/{game_with_ai => game}/start_game_with_ai.py | 2 +- .../wait_ai_type_to_start_game_with_ai.py | 2 +- .../aiogram/game/routes/game_with_ai/__init__.py | 0 23 files changed, 31 insertions(+), 31 deletions(-) delete mode 100644 src/ttt/application/game/common/__init__.py delete mode 100644 src/ttt/application/game/common/ports/__init__.py rename src/ttt/application/game/{common => game}/ports/game_ai_gateway.py (100%) rename src/ttt/application/game/{common => game}/ports/game_views.py (100%) rename src/ttt/application/game/{common => game}/ports/games.py (100%) rename src/ttt/application/game/{common => game}/ports/waiting_locations.py (100%) rename src/ttt/application/game/{game_with_ai => game}/start_game_with_ai.py (93%) rename src/ttt/application/game/{game_with_ai => game}/wait_ai_type_to_start_game_with_ai.py (88%) delete mode 100644 src/ttt/application/game/game_with_ai/__init__.py rename src/ttt/presentation/aiogram/game/routes/{game_with_ai => game}/start_game_with_ai.py (92%) rename src/ttt/presentation/aiogram/game/routes/{game_with_ai => game}/wait_ai_type_to_start_game_with_ai.py (91%) delete mode 100644 src/ttt/presentation/aiogram/game/routes/game_with_ai/__init__.py diff --git a/src/ttt/application/game/common/__init__.py b/src/ttt/application/game/common/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/src/ttt/application/game/common/ports/__init__.py b/src/ttt/application/game/common/ports/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/src/ttt/application/game/game/cancel_game.py b/src/ttt/application/game/game/cancel_game.py index 092effd..2cf6999 100644 --- a/src/ttt/application/game/game/cancel_game.py +++ b/src/ttt/application/game/game/cancel_game.py @@ -4,9 +4,9 @@ from ttt.application.common.ports.map import Map from ttt.application.common.ports.transaction import Transaction from ttt.application.common.ports.uuids import UUIDs -from ttt.application.game.common.ports.game_views import GameViews -from ttt.application.game.common.ports.games import Games from ttt.application.game.game.ports.game_log import GameLog +from ttt.application.game.game.ports.game_views import GameViews +from ttt.application.game.game.ports.games import Games from ttt.entities.core.game.game import AlreadyCompletedGameError from ttt.entities.core.user.location import UserLocation from ttt.entities.core.user.user import User diff --git a/src/ttt/application/game/game/make_move_in_game.py b/src/ttt/application/game/game/make_move_in_game.py index 2b6293b..4063d8f 100644 --- a/src/ttt/application/game/game/make_move_in_game.py +++ b/src/ttt/application/game/game/make_move_in_game.py @@ -5,10 +5,10 @@ from ttt.application.common.ports.randoms import Randoms from ttt.application.common.ports.transaction import Transaction from ttt.application.common.ports.uuids import UUIDs -from ttt.application.game.common.ports.game_ai_gateway import GameAiGateway -from ttt.application.game.common.ports.game_views import GameViews -from ttt.application.game.common.ports.games import Games +from ttt.application.game.game.ports.game_ai_gateway import GameAiGateway from ttt.application.game.game.ports.game_log import GameLog +from ttt.application.game.game.ports.game_views import GameViews +from ttt.application.game.game.ports.games import Games from ttt.application.user.common.ports.users import Users from ttt.entities.core.game.cell import AlreadyFilledCellError from ttt.entities.core.game.game import ( diff --git a/src/ttt/application/game/common/ports/game_ai_gateway.py b/src/ttt/application/game/game/ports/game_ai_gateway.py similarity index 100% rename from src/ttt/application/game/common/ports/game_ai_gateway.py rename to src/ttt/application/game/game/ports/game_ai_gateway.py diff --git a/src/ttt/application/game/common/ports/game_views.py b/src/ttt/application/game/game/ports/game_views.py similarity index 100% rename from src/ttt/application/game/common/ports/game_views.py rename to src/ttt/application/game/game/ports/game_views.py diff --git a/src/ttt/application/game/common/ports/games.py b/src/ttt/application/game/game/ports/games.py similarity index 100% rename from src/ttt/application/game/common/ports/games.py rename to src/ttt/application/game/game/ports/games.py diff --git a/src/ttt/application/game/common/ports/waiting_locations.py b/src/ttt/application/game/game/ports/waiting_locations.py similarity index 100% rename from src/ttt/application/game/common/ports/waiting_locations.py rename to src/ttt/application/game/game/ports/waiting_locations.py diff --git a/src/ttt/application/game/game/start_game.py b/src/ttt/application/game/game/start_game.py index 532a347..06b2132 100644 --- a/src/ttt/application/game/game/start_game.py +++ b/src/ttt/application/game/game/start_game.py @@ -5,10 +5,10 @@ from ttt.application.common.ports.map import Map from ttt.application.common.ports.transaction import Transaction from ttt.application.common.ports.uuids import UUIDs -from ttt.application.game.common.ports.game_views import GameViews -from ttt.application.game.common.ports.games import Games -from ttt.application.game.common.ports.waiting_locations import WaitingLocations from ttt.application.game.game.ports.game_log import GameLog +from ttt.application.game.game.ports.game_views import GameViews +from ttt.application.game.game.ports.games import Games +from ttt.application.game.game.ports.waiting_locations import WaitingLocations from ttt.application.user.common.ports.user_views import CommonUserViews from ttt.application.user.common.ports.users import Users from ttt.entities.core.game.game import UsersAlreadyInGameError, start_game diff --git a/src/ttt/application/game/game_with_ai/start_game_with_ai.py b/src/ttt/application/game/game/start_game_with_ai.py similarity index 93% rename from src/ttt/application/game/game_with_ai/start_game_with_ai.py rename to src/ttt/application/game/game/start_game_with_ai.py index 3d5d9ce..f1d4363 100644 --- a/src/ttt/application/game/game_with_ai/start_game_with_ai.py +++ b/src/ttt/application/game/game/start_game_with_ai.py @@ -5,11 +5,11 @@ from ttt.application.common.ports.randoms import Randoms from ttt.application.common.ports.transaction import Transaction from ttt.application.common.ports.uuids import UUIDs -from ttt.application.game.common.ports.game_ai_gateway import GameAiGateway -from ttt.application.game.common.ports.game_views import GameViews -from ttt.application.game.common.ports.games import Games -from ttt.application.game.common.ports.waiting_locations import WaitingLocations +from ttt.application.game.game.ports.game_ai_gateway import GameAiGateway from ttt.application.game.game.ports.game_log import GameLog +from ttt.application.game.game.ports.game_views import GameViews +from ttt.application.game.game.ports.games import Games +from ttt.application.game.game.ports.waiting_locations import WaitingLocations from ttt.application.user.common.ports.user_views import CommonUserViews from ttt.application.user.common.ports.users import Users from ttt.entities.core.game.ai import AiType diff --git a/src/ttt/application/game/game_with_ai/wait_ai_type_to_start_game_with_ai.py b/src/ttt/application/game/game/wait_ai_type_to_start_game_with_ai.py similarity index 88% rename from src/ttt/application/game/game_with_ai/wait_ai_type_to_start_game_with_ai.py rename to src/ttt/application/game/game/wait_ai_type_to_start_game_with_ai.py index 3999812..82550fb 100644 --- a/src/ttt/application/game/game_with_ai/wait_ai_type_to_start_game_with_ai.py +++ b/src/ttt/application/game/game/wait_ai_type_to_start_game_with_ai.py @@ -1,7 +1,7 @@ from dataclasses import dataclass -from ttt.application.game.common.ports.game_views import GameViews from ttt.application.game.game.ports.game_log import GameLog +from ttt.application.game.game.ports.game_views import GameViews from ttt.entities.core.user.location import UserLocation diff --git a/src/ttt/application/game/game/wait_game.py b/src/ttt/application/game/game/wait_game.py index 5070602..6f1d9ff 100644 --- a/src/ttt/application/game/game/wait_game.py +++ b/src/ttt/application/game/game/wait_game.py @@ -1,9 +1,9 @@ from dataclasses import dataclass from ttt.application.common.ports.transaction import Transaction -from ttt.application.game.common.ports.game_views import GameViews -from ttt.application.game.common.ports.waiting_locations import WaitingLocations from ttt.application.game.game.ports.game_log import GameLog +from ttt.application.game.game.ports.game_views import GameViews +from ttt.application.game.game.ports.waiting_locations import WaitingLocations from ttt.application.user.common.ports.user_views import CommonUserViews from ttt.application.user.common.ports.users import Users from ttt.entities.core.user.location import UserLocation diff --git a/src/ttt/application/game/game_with_ai/__init__.py b/src/ttt/application/game/game_with_ai/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/src/ttt/infrastructure/adapters/game_ai_gateway.py b/src/ttt/infrastructure/adapters/game_ai_gateway.py index e9783f5..7c30832 100644 --- a/src/ttt/infrastructure/adapters/game_ai_gateway.py +++ b/src/ttt/infrastructure/adapters/game_ai_gateway.py @@ -2,7 +2,7 @@ from typing import cast from uuid import UUID -from ttt.application.game.common.ports.game_ai_gateway import GameAiGateway +from ttt.application.game.game.ports.game_ai_gateway import GameAiGateway from ttt.entities.core.game.ai import Ai, AiType from ttt.entities.core.game.game import Game from ttt.infrastructure.openai.gemini import Gemini diff --git a/src/ttt/infrastructure/adapters/games.py b/src/ttt/infrastructure/adapters/games.py index d31e4ad..99d4398 100644 --- a/src/ttt/infrastructure/adapters/games.py +++ b/src/ttt/infrastructure/adapters/games.py @@ -3,7 +3,7 @@ from sqlalchemy import select from sqlalchemy.ext.asyncio import AsyncSession -from ttt.application.game.common.ports.games import Games +from ttt.application.game.game.ports.games import Games from ttt.entities.core.game.game import Game from ttt.infrastructure.sqlalchemy.tables import TableGame, TableUser diff --git a/src/ttt/infrastructure/adapters/waiting_locations.py b/src/ttt/infrastructure/adapters/waiting_locations.py index 72d5ee8..e8510a3 100644 --- a/src/ttt/infrastructure/adapters/waiting_locations.py +++ b/src/ttt/infrastructure/adapters/waiting_locations.py @@ -4,7 +4,7 @@ from pydantic import TypeAdapter -from ttt.application.game.common.ports.waiting_locations import ( +from ttt.application.game.game.ports.waiting_locations import ( WaitingLocations, WaitingLocationsPush, ) diff --git a/src/ttt/main/aiogram/di.py b/src/ttt/main/aiogram/di.py index ff547fd..9b7142b 100755 --- a/src/ttt/main/aiogram/di.py +++ b/src/ttt/main/aiogram/di.py @@ -22,15 +22,15 @@ from structlog.types import FilteringBoundLogger from ttt.application.common.ports.emojis import Emojis -from ttt.application.game.common.ports.game_views import GameViews from ttt.application.game.game.cancel_game import CancelGame from ttt.application.game.game.make_move_in_game import MakeMoveInGame +from ttt.application.game.game.ports.game_views import GameViews from ttt.application.game.game.start_game import StartGame -from ttt.application.game.game.wait_game import WaitGame -from ttt.application.game.game_with_ai.start_game_with_ai import StartGameWithAi -from ttt.application.game.game_with_ai.wait_ai_type_to_start_game_with_ai import ( # noqa: E501 +from ttt.application.game.game.start_game_with_ai import StartGameWithAi +from ttt.application.game.game.wait_ai_type_to_start_game_with_ai import ( WaitAiTypeToStartGameWithAi, ) +from ttt.application.game.game.wait_game import WaitGame from ttt.application.user.common.dto.common import PaidStarsPurchasePayment from ttt.application.user.common.ports.stars_purchase_payment_gateway import ( StarsPurchasePaymentGateway, diff --git a/src/ttt/main/common/di.py b/src/ttt/main/common/di.py index ac6833a..e264de8 100644 --- a/src/ttt/main/common/di.py +++ b/src/ttt/main/common/di.py @@ -17,10 +17,10 @@ from ttt.application.common.ports.randoms import Randoms from ttt.application.common.ports.transaction import Transaction from ttt.application.common.ports.uuids import UUIDs -from ttt.application.game.common.ports.game_ai_gateway import GameAiGateway -from ttt.application.game.common.ports.games import Games -from ttt.application.game.common.ports.waiting_locations import WaitingLocations +from ttt.application.game.game.ports.game_ai_gateway import GameAiGateway from ttt.application.game.game.ports.game_log import GameLog +from ttt.application.game.game.ports.games import Games +from ttt.application.game.game.ports.waiting_locations import WaitingLocations from ttt.application.user.common.ports.paid_stars_purchase_payment_inbox import ( # noqa: E501 PaidStarsPurchasePaymentInbox, ) diff --git a/src/ttt/presentation/adapters/game_views.py b/src/ttt/presentation/adapters/game_views.py index 0190ef2..2deefa9 100644 --- a/src/ttt/presentation/adapters/game_views.py +++ b/src/ttt/presentation/adapters/game_views.py @@ -4,7 +4,7 @@ from aiogram import Bot from aiogram.fsm.storage.base import BaseStorage -from ttt.application.game.common.ports.game_views import GameViews +from ttt.application.game.game.ports.game_views import GameViews from ttt.entities.core.game.game import Game from ttt.entities.core.user.location import UserGameLocation, UserLocation from ttt.infrastructure.background_tasks import BackgroundTasks diff --git a/src/ttt/presentation/aiogram/game/routes/all.py b/src/ttt/presentation/aiogram/game/routes/all.py index 7e6c213..dc45775 100644 --- a/src/ttt/presentation/aiogram/game/routes/all.py +++ b/src/ttt/presentation/aiogram/game/routes/all.py @@ -4,13 +4,13 @@ from ttt.presentation.aiogram.game.routes.game.make_move_in_game import ( make_move_in_game_router, ) -from ttt.presentation.aiogram.game.routes.game.wait_game import wait_game_router -from ttt.presentation.aiogram.game.routes.game_with_ai.start_game_with_ai import ( # noqa: E501 +from ttt.presentation.aiogram.game.routes.game.start_game_with_ai import ( start_game_with_ai_router, ) -from ttt.presentation.aiogram.game.routes.game_with_ai.wait_ai_type_to_start_game_with_ai import ( # noqa: E501 +from ttt.presentation.aiogram.game.routes.game.wait_ai_type_to_start_game_with_ai import ( # noqa: E501 wait_ai_type_to_start_game_with_ai_router, ) +from ttt.presentation.aiogram.game.routes.game.wait_game import wait_game_router game_routers = ( diff --git a/src/ttt/presentation/aiogram/game/routes/game_with_ai/start_game_with_ai.py b/src/ttt/presentation/aiogram/game/routes/game/start_game_with_ai.py similarity index 92% rename from src/ttt/presentation/aiogram/game/routes/game_with_ai/start_game_with_ai.py rename to src/ttt/presentation/aiogram/game/routes/game/start_game_with_ai.py index 8557ce0..a74cecb 100644 --- a/src/ttt/presentation/aiogram/game/routes/game_with_ai/start_game_with_ai.py +++ b/src/ttt/presentation/aiogram/game/routes/game/start_game_with_ai.py @@ -2,7 +2,7 @@ from aiogram.types import CallbackQuery, Message from dishka.integrations.aiogram import FromDishka, inject -from ttt.application.game.game_with_ai.start_game_with_ai import ( +from ttt.application.game.game.start_game_with_ai import ( StartGameWithAi, ) from ttt.entities.core.game.ai import AiType diff --git a/src/ttt/presentation/aiogram/game/routes/game_with_ai/wait_ai_type_to_start_game_with_ai.py b/src/ttt/presentation/aiogram/game/routes/game/wait_ai_type_to_start_game_with_ai.py similarity index 91% rename from src/ttt/presentation/aiogram/game/routes/game_with_ai/wait_ai_type_to_start_game_with_ai.py rename to src/ttt/presentation/aiogram/game/routes/game/wait_ai_type_to_start_game_with_ai.py index bd21465..d868302 100644 --- a/src/ttt/presentation/aiogram/game/routes/game_with_ai/wait_ai_type_to_start_game_with_ai.py +++ b/src/ttt/presentation/aiogram/game/routes/game/wait_ai_type_to_start_game_with_ai.py @@ -4,7 +4,7 @@ from aiogram.types import Message from dishka.integrations.aiogram import FromDishka, inject -from ttt.application.game.game_with_ai.wait_ai_type_to_start_game_with_ai import ( # noqa: E501 +from ttt.application.game.game.wait_ai_type_to_start_game_with_ai import ( WaitAiTypeToStartGameWithAi, ) from ttt.entities.core.user.location import UserLocation diff --git a/src/ttt/presentation/aiogram/game/routes/game_with_ai/__init__.py b/src/ttt/presentation/aiogram/game/routes/game_with_ai/__init__.py deleted file mode 100644 index e69de29..0000000