Skip to content

Commit feaa91a

Browse files
committed
HW 06: apply black again
1 parent 4cb6d6b commit feaa91a

File tree

4 files changed

+15
-37
lines changed

4 files changed

+15
-37
lines changed

homework_06/domain/services.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,7 @@ def __init__(self, product_repo: ProductRepository, order_repo: OrderRepository)
1717
self.order_repo = order_repo
1818

1919
def create_product(self, name: str, quantity: int, price: float) -> Product:
20-
product = Product(
21-
id=generate_next_id(), name=name, quantity=quantity, price=price
22-
)
20+
product = Product(id=generate_next_id(), name=name, quantity=quantity, price=price)
2321
self.product_repo.add(product)
2422
return product
2523

homework_06/infrastructure/repositories.py

Lines changed: 6 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
from typing import List
22

3+
from sqlalchemy.orm import Session
4+
35
from domain.models import Order, Product
46
from domain.repositories import OrderRepository, ProductRepository
5-
from sqlalchemy.orm import Session
67

78
from .orm import OrderORM, ProductORM
89

@@ -12,9 +13,7 @@ def __init__(self, session: Session):
1213
self.session = session
1314

1415
def add(self, product: Product):
15-
product_orm = ProductORM(
16-
name=product.name, quantity=product.quantity, price=product.price
17-
)
16+
product_orm = ProductORM(name=product.name, quantity=product.quantity, price=product.price)
1817
self.session.add(product_orm)
1918

2019
def get(self, product_id: int) -> Product:
@@ -45,27 +44,18 @@ def __init__(self, session: Session):
4544

4645
def add(self, order: Order):
4746
order_orm = OrderORM()
48-
order_orm.products = [
49-
self.session.query(ProductORM).filter_by(id=p.id).one()
50-
for p in order.products
51-
]
47+
order_orm.products = [self.session.query(ProductORM).filter_by(id=p.id).one() for p in order.products]
5248
self.session.add(order_orm)
5349

5450
def get(self, order_id: int) -> Order:
5551
order_orm = self.session.query(OrderORM).filter_by(id=order_id).one()
56-
products = [
57-
Product(id=p.id, name=p.name, quantity=p.quantity, price=p.price)
58-
for p in order_orm.products
59-
]
52+
products = [Product(id=p.id, name=p.name, quantity=p.quantity, price=p.price) for p in order_orm.products]
6053
return Order(id=int(order_orm.id), products=list(products))
6154

6255
def list(self) -> List[Order]:
6356
orders_orm = self.session.query(OrderORM).all()
6457
orders = []
6558
for order_orm in orders_orm:
66-
products = [
67-
Product(id=p.id, name=p.name, quantity=p.quantity, price=p.price)
68-
for p in order_orm.products
69-
]
59+
products = [Product(id=p.id, name=p.name, quantity=p.quantity, price=p.price) for p in order_orm.products]
7060
orders.append(Order(id=int(order_orm.id), products=products))
7161
return orders

homework_06/main.py

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,11 @@ def main():
2424

2525
warehouse_service = WarehouseService(product_repo, order_repo)
2626
with uow:
27-
new_product = warehouse_service.create_product(
28-
name="test1", quantity=1, price=100
29-
)
27+
new_product = warehouse_service.create_product(name="test1", quantity=1, price=100)
3028
uow.commit()
3129
print(f"create product: {new_product}")
3230

33-
another_product = warehouse_service.create_product(
34-
name="test2", quantity=10, price=42
35-
)
31+
another_product = warehouse_service.create_product(name="test2", quantity=10, price=42)
3632
uow.commit()
3733
print(f"create product: {another_product}")
3834

homework_06/tests/test_infrastructure/test_repository.py

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,11 @@
11
# flake8: noqa
2-
from domain.models import Order, Product
3-
from infrastructure.orm import OrderORM, ProductORM
4-
from infrastructure.repositories import (
5-
SqlAlchemyOrderRepository,
6-
SqlAlchemyProductRepository,
7-
)
82
from pytest_mock import MockerFixture
93
from sqlalchemy.orm import Session
104

5+
from domain.models import Order, Product
6+
from infrastructure.orm import OrderORM, ProductORM
7+
from infrastructure.repositories import SqlAlchemyOrderRepository, SqlAlchemyProductRepository
8+
119

1210
class TestRepository:
1311
def test_sqlalchemy_product_repository_add(self, mocker: MockerFixture):
@@ -28,9 +26,7 @@ def test_sqlalchemy_product_repository_get(self, mocker: MockerFixture):
2826
mock_session = mocker.Mock(spec=Session)
2927
repo = SqlAlchemyProductRepository(mock_session)
3028
product_orm = ProductORM(id=1, name="Test Product", quantity=10, price=100)
31-
mock_session.query.return_value.filter_by.return_value.one.return_value = (
32-
product_orm
33-
)
29+
mock_session.query.return_value.filter_by.return_value.one.return_value = product_orm
3430

3531
product = repo.get(1)
3632

@@ -86,9 +82,7 @@ def test_sqlalchemy_order_repository_get(self, mocker: MockerFixture):
8682
product_orm1 = ProductORM(id=1, name="Product 1", quantity=10, price=100)
8783
product_orm2 = ProductORM(id=2, name="Product 2", quantity=20, price=200)
8884
order_orm = OrderORM(id=1, products=[product_orm1, product_orm2])
89-
mock_session.query.return_value.filter_by.return_value.one.return_value = (
90-
order_orm
91-
)
85+
mock_session.query.return_value.filter_by.return_value.one.return_value = order_orm
9286

9387
order = repo.get(1)
9488

0 commit comments

Comments
 (0)