fix test format
This commit is contained in:
@@ -9,32 +9,36 @@ import src.models as models
|
|||||||
from src.database import get_session
|
from src.database import get_session
|
||||||
from src.auth.auth import get_current_user
|
from src.auth.auth import get_current_user
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
def mock_session(mocker):
|
def mock_session(mocker):
|
||||||
session = mocker.Mock()
|
session = mocker.Mock()
|
||||||
|
|
||||||
def override():
|
def override():
|
||||||
return session
|
return session
|
||||||
|
|
||||||
app.dependency_overrides[get_session] = override
|
app.dependency_overrides[get_session] = override
|
||||||
yield session
|
yield session
|
||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
def mock_user():
|
def mock_user():
|
||||||
user = models.User(id=1, name='test user', email='test@user.com')
|
user = models.User(id=1, name='test user', email='test@user.com')
|
||||||
|
|
||||||
def override():
|
def override():
|
||||||
return user
|
return user
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = override
|
app.dependency_overrides[get_current_user] = override
|
||||||
yield user
|
yield user
|
||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
def client():
|
def client():
|
||||||
return TestClient(app)
|
return TestClient(app)
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture(name='session')
|
@pytest.fixture(name='session')
|
||||||
def session_fixture():
|
def session_fixture():
|
||||||
engine = create_engine(
|
engine = create_engine(
|
||||||
@@ -55,4 +59,4 @@ def session_fixture():
|
|||||||
transaction.rollback()
|
transaction.rollback()
|
||||||
session.close()
|
session.close()
|
||||||
connection.close()
|
connection.close()
|
||||||
engine.dispose()
|
engine.dispose()
|
||||||
|
|||||||
@@ -2,9 +2,11 @@ import src.models as models
|
|||||||
import tests.factories.contracts as contract_factory
|
import tests.factories.contracts as contract_factory
|
||||||
import tests.factories.products as product_factory
|
import tests.factories.products as product_factory
|
||||||
|
|
||||||
|
|
||||||
def contract_product_factory(**kwargs):
|
def contract_product_factory(**kwargs):
|
||||||
contract = contract_factory.contract_factory(id=1)
|
contract = contract_factory.contract_factory(id=1)
|
||||||
product = product_factory.product_public_factory(id=1, type=models.ProductType.RECCURENT)
|
product = product_factory.product_public_factory(
|
||||||
|
id=1, type=models.ProductType.RECCURENT)
|
||||||
data = dict(
|
data = dict(
|
||||||
product_id=1,
|
product_id=1,
|
||||||
shipment_id=1,
|
shipment_id=1,
|
||||||
@@ -16,6 +18,7 @@ def contract_product_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.ContractProduct(**data)
|
return models.ContractProduct(**data)
|
||||||
|
|
||||||
|
|
||||||
def contract_product_public_factory(**kwargs):
|
def contract_product_public_factory(**kwargs):
|
||||||
contract = contract_factory.contract_factory(id=1)
|
contract = contract_factory.contract_factory(id=1)
|
||||||
product = product_factory.product_public_factory(id=1)
|
product = product_factory.product_public_factory(id=1)
|
||||||
@@ -31,6 +34,7 @@ def contract_product_public_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.ContractProductPublic(**data)
|
return models.ContractProductPublic(**data)
|
||||||
|
|
||||||
|
|
||||||
def contract_product_create_factory(**kwargs):
|
def contract_product_create_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
product_id=1,
|
product_id=1,
|
||||||
@@ -40,6 +44,7 @@ def contract_product_create_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.ContractProductCreate(**data)
|
return models.ContractProductCreate(**data)
|
||||||
|
|
||||||
|
|
||||||
def contract_product_update_factory(**kwargs):
|
def contract_product_update_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
product_id=1,
|
product_id=1,
|
||||||
@@ -49,6 +54,7 @@ def contract_product_update_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.ContractProductUpdate(**data)
|
return models.ContractProductUpdate(**data)
|
||||||
|
|
||||||
|
|
||||||
def contract_product_body_factory(**kwargs):
|
def contract_product_body_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
product_id=1,
|
product_id=1,
|
||||||
@@ -56,4 +62,4 @@ def contract_product_body_factory(**kwargs):
|
|||||||
quantity=1,
|
quantity=1,
|
||||||
)
|
)
|
||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return data
|
return data
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
import src.models as models
|
import src.models as models
|
||||||
from .forms import form_factory
|
from .forms import form_factory
|
||||||
|
|
||||||
|
|
||||||
def contract_factory(**kwargs):
|
def contract_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
id=1,
|
id=1,
|
||||||
@@ -17,6 +18,7 @@ def contract_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.Contract(**data)
|
return models.Contract(**data)
|
||||||
|
|
||||||
|
|
||||||
def contract_public_factory(**kwargs):
|
def contract_public_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
id=1,
|
id=1,
|
||||||
@@ -33,6 +35,7 @@ def contract_public_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.ContractPublic(**data)
|
return models.ContractPublic(**data)
|
||||||
|
|
||||||
|
|
||||||
def contract_create_factory(**kwargs):
|
def contract_create_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
firstname="test",
|
firstname="test",
|
||||||
@@ -48,6 +51,7 @@ def contract_create_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.ContractCreate(**data)
|
return models.ContractCreate(**data)
|
||||||
|
|
||||||
|
|
||||||
def contract_update_factory(**kwargs):
|
def contract_update_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
firstname="test",
|
firstname="test",
|
||||||
@@ -60,6 +64,7 @@ def contract_update_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.ContractUpdate(**data)
|
return models.ContractUpdate(**data)
|
||||||
|
|
||||||
|
|
||||||
def contract_body_factory(**kwargs):
|
def contract_body_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
firstname="test",
|
firstname="test",
|
||||||
@@ -73,4 +78,4 @@ def contract_body_factory(**kwargs):
|
|||||||
form_id=1
|
form_id=1
|
||||||
)
|
)
|
||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return data
|
return data
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import src.models as models
|
import src.models as models
|
||||||
from .productors import productor_public_factory
|
from .productors import productor_public_factory
|
||||||
from .shipments import shipment_public_factory
|
|
||||||
from .users import user_factory
|
from .users import user_factory
|
||||||
import datetime
|
import datetime
|
||||||
|
|
||||||
|
|
||||||
def form_factory(**kwargs):
|
def form_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
id=1,
|
id=1,
|
||||||
@@ -21,7 +21,7 @@ def form_factory(**kwargs):
|
|||||||
)
|
)
|
||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.Form(**data)
|
return models.Form(**data)
|
||||||
|
|
||||||
|
|
||||||
def form_body_factory(**kwargs):
|
def form_body_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
@@ -37,6 +37,7 @@ def form_body_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return data
|
return data
|
||||||
|
|
||||||
|
|
||||||
def form_create_factory(**kwargs):
|
def form_create_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
name='form 1',
|
name='form 1',
|
||||||
@@ -51,6 +52,7 @@ def form_create_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.FormCreate(**data)
|
return models.FormCreate(**data)
|
||||||
|
|
||||||
|
|
||||||
def form_update_factory(**kwargs):
|
def form_update_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
name='form 1',
|
name='form 1',
|
||||||
@@ -65,7 +67,8 @@ def form_update_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.FormUpdate(**data)
|
return models.FormUpdate(**data)
|
||||||
|
|
||||||
def form_public_factory(form=None, shipments=[],**kwargs):
|
|
||||||
|
def form_public_factory(form=None, shipments=[], **kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
id=1,
|
id=1,
|
||||||
name='form 1',
|
name='form 1',
|
||||||
@@ -81,4 +84,4 @@ def form_public_factory(form=None, shipments=[],**kwargs):
|
|||||||
productor=productor_public_factory(),
|
productor=productor_public_factory(),
|
||||||
)
|
)
|
||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.FormPublic(**data)
|
return models.FormPublic(**data)
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
import src.models as models
|
import src.models as models
|
||||||
|
|
||||||
|
|
||||||
def productor_factory(**kwargs):
|
def productor_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
id=1,
|
id=1,
|
||||||
@@ -10,6 +11,7 @@ def productor_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.Productor(**data)
|
return models.Productor(**data)
|
||||||
|
|
||||||
|
|
||||||
def productor_public_factory(**kwargs):
|
def productor_public_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
id=1,
|
id=1,
|
||||||
@@ -22,6 +24,7 @@ def productor_public_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.ProductorPublic(**data)
|
return models.ProductorPublic(**data)
|
||||||
|
|
||||||
|
|
||||||
def productor_create_factory(**kwargs):
|
def productor_create_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
id=1,
|
id=1,
|
||||||
@@ -34,6 +37,7 @@ def productor_create_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.ProductorCreate(**data)
|
return models.ProductorCreate(**data)
|
||||||
|
|
||||||
|
|
||||||
def productor_update_factory(**kwargs):
|
def productor_update_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
id=1,
|
id=1,
|
||||||
@@ -46,6 +50,7 @@ def productor_update_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.ProductorUpdate(**data)
|
return models.ProductorUpdate(**data)
|
||||||
|
|
||||||
|
|
||||||
def productor_body_factory(**kwargs):
|
def productor_body_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
id=1,
|
id=1,
|
||||||
@@ -56,4 +61,4 @@ def productor_body_factory(**kwargs):
|
|||||||
payment_methods=[],
|
payment_methods=[],
|
||||||
)
|
)
|
||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return data
|
return data
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import src.models as models
|
import src.models as models
|
||||||
from .productors import productor_factory
|
from .productors import productor_factory
|
||||||
from .shipments import shipment_factory
|
|
||||||
|
|
||||||
def product_body_factory(**kwargs):
|
def product_body_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
@@ -16,6 +16,7 @@ def product_body_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return data
|
return data
|
||||||
|
|
||||||
|
|
||||||
def product_create_factory(**kwargs):
|
def product_create_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
name='product test 1',
|
name='product test 1',
|
||||||
@@ -30,6 +31,7 @@ def product_create_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.ProductCreate(**data)
|
return models.ProductCreate(**data)
|
||||||
|
|
||||||
|
|
||||||
def product_update_factory(**kwargs):
|
def product_update_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
name='product test 1',
|
name='product test 1',
|
||||||
@@ -44,7 +46,8 @@ def product_update_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.ProductUpdate(**data)
|
return models.ProductUpdate(**data)
|
||||||
|
|
||||||
def product_public_factory(productor=None, shipments=[],**kwargs):
|
|
||||||
|
def product_public_factory(productor=None, shipments=[], **kwargs):
|
||||||
if productor is None:
|
if productor is None:
|
||||||
productor = productor_factory()
|
productor = productor_factory()
|
||||||
data = dict(
|
data = dict(
|
||||||
@@ -61,4 +64,4 @@ def product_public_factory(productor=None, shipments=[],**kwargs):
|
|||||||
shipments=shipments,
|
shipments=shipments,
|
||||||
)
|
)
|
||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.ProductPublic(**data)
|
return models.ProductPublic(**data)
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
import src.models as models
|
import src.models as models
|
||||||
import datetime
|
import datetime
|
||||||
|
|
||||||
|
|
||||||
def shipment_factory(**kwargs):
|
def shipment_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
id=1,
|
id=1,
|
||||||
@@ -11,6 +12,7 @@ def shipment_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.Shipment(**data)
|
return models.Shipment(**data)
|
||||||
|
|
||||||
|
|
||||||
def shipment_public_factory(**kwargs):
|
def shipment_public_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
id=1,
|
id=1,
|
||||||
@@ -23,6 +25,7 @@ def shipment_public_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.ShipmentPublic(**data)
|
return models.ShipmentPublic(**data)
|
||||||
|
|
||||||
|
|
||||||
def shipment_create_factory(**kwargs):
|
def shipment_create_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
name="test shipment",
|
name="test shipment",
|
||||||
@@ -33,6 +36,7 @@ def shipment_create_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.ShipmentCreate(**data)
|
return models.ShipmentCreate(**data)
|
||||||
|
|
||||||
|
|
||||||
def shipment_update_factory(**kwargs):
|
def shipment_update_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
name="test shipment",
|
name="test shipment",
|
||||||
@@ -43,6 +47,7 @@ def shipment_update_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.ShipmentUpdate(**data)
|
return models.ShipmentUpdate(**data)
|
||||||
|
|
||||||
|
|
||||||
def shipment_body_factory(**kwargs):
|
def shipment_body_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
name="test shipment",
|
name="test shipment",
|
||||||
@@ -50,4 +55,4 @@ def shipment_body_factory(**kwargs):
|
|||||||
date="2025-10-10",
|
date="2025-10-10",
|
||||||
)
|
)
|
||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return data
|
return data
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
import src.models as models
|
import src.models as models
|
||||||
|
|
||||||
|
|
||||||
def user_factory(**kwargs):
|
def user_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
id=1,
|
id=1,
|
||||||
@@ -10,6 +11,7 @@ def user_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.User(**data)
|
return models.User(**data)
|
||||||
|
|
||||||
|
|
||||||
def user_public_factory(**kwargs):
|
def user_public_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
id=1,
|
id=1,
|
||||||
@@ -20,6 +22,7 @@ def user_public_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.UserPublic(**data)
|
return models.UserPublic(**data)
|
||||||
|
|
||||||
|
|
||||||
def user_create_factory(**kwargs):
|
def user_create_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
name="test user",
|
name="test user",
|
||||||
@@ -29,6 +32,7 @@ def user_create_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.UserCreate(**data)
|
return models.UserCreate(**data)
|
||||||
|
|
||||||
|
|
||||||
def user_update_factory(**kwargs):
|
def user_update_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
name="test user",
|
name="test user",
|
||||||
@@ -38,6 +42,7 @@ def user_update_factory(**kwargs):
|
|||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return models.UserUpdate(**data)
|
return models.UserUpdate(**data)
|
||||||
|
|
||||||
|
|
||||||
def user_body_factory(**kwargs):
|
def user_body_factory(**kwargs):
|
||||||
data = dict(
|
data = dict(
|
||||||
name="test user",
|
name="test user",
|
||||||
@@ -45,4 +50,4 @@ def user_body_factory(**kwargs):
|
|||||||
role_names=[],
|
role_names=[],
|
||||||
)
|
)
|
||||||
data.update(kwargs)
|
data.update(kwargs)
|
||||||
return data
|
return data
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ import tests.factories.productors as productors_factory
|
|||||||
import tests.factories.products as products_factory
|
import tests.factories.products as products_factory
|
||||||
import tests.factories.users as users_factory
|
import tests.factories.users as users_factory
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
def productor(session: Session) -> models.ProductorPublic:
|
def productor(session: Session) -> models.ProductorPublic:
|
||||||
productor = productors_service.create_one(
|
productor = productors_service.create_one(
|
||||||
@@ -46,8 +47,10 @@ def productors(session: Session) -> models.ProductorPublic:
|
|||||||
]
|
]
|
||||||
return productors
|
return productors
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
def products(session: Session, productor: models.ProductorPublic) -> list[models.ProductPublic]:
|
def products(session: Session,
|
||||||
|
productor: models.ProductorPublic) -> list[models.ProductPublic]:
|
||||||
products = [
|
products = [
|
||||||
products_service.create_one(
|
products_service.create_one(
|
||||||
session,
|
session,
|
||||||
@@ -68,65 +71,70 @@ def products(session: Session, productor: models.ProductorPublic) -> list[models
|
|||||||
]
|
]
|
||||||
return products
|
return products
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
def user(session: Session) -> models.UserPublic:
|
def user(session: Session) -> models.UserPublic:
|
||||||
user = users_service.create_one(
|
user = users_service.create_one(
|
||||||
session,
|
session,
|
||||||
users_factory.user_create_factory(
|
users_factory.user_create_factory(
|
||||||
name='test user',
|
name='test user',
|
||||||
email='test@test.com',
|
email='test@test.com',
|
||||||
role_names=['Légumineuses']
|
role_names=['Légumineuses']
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
return user
|
return user
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
def users(session: Session) -> list[models.UserPublic]:
|
def users(session: Session) -> list[models.UserPublic]:
|
||||||
users = [
|
users = [
|
||||||
users_service.create_one(
|
users_service.create_one(
|
||||||
session,
|
session,
|
||||||
users_factory.user_create_factory(
|
users_factory.user_create_factory(
|
||||||
name='test user 1 (admin)',
|
name='test user 1 (admin)',
|
||||||
email='test1@test.com',
|
email='test1@test.com',
|
||||||
role_names=['Légumineuses', 'Légumes', 'Oeufs', 'Porc-Agneau', 'Vin', 'Fruits']
|
role_names=[
|
||||||
)
|
'Légumineuses',
|
||||||
),
|
'Légumes',
|
||||||
|
'Oeufs',
|
||||||
|
'Porc-Agneau',
|
||||||
|
'Vin',
|
||||||
|
'Fruits'])),
|
||||||
users_service.create_one(
|
users_service.create_one(
|
||||||
session,
|
session,
|
||||||
users_factory.user_create_factory(
|
users_factory.user_create_factory(
|
||||||
name='test user 2',
|
name='test user 2',
|
||||||
email='test2@test.com',
|
email='test2@test.com',
|
||||||
role_names=['Légumineuses']
|
role_names=['Légumineuses'])),
|
||||||
)
|
|
||||||
),
|
|
||||||
users_service.create_one(
|
users_service.create_one(
|
||||||
session,
|
session,
|
||||||
users_factory.user_create_factory(
|
users_factory.user_create_factory(
|
||||||
name='test user 3',
|
name='test user 3',
|
||||||
email='test3@test.com',
|
email='test3@test.com',
|
||||||
role_names=['Porc-Agneau']
|
role_names=['Porc-Agneau']))]
|
||||||
)
|
|
||||||
)
|
|
||||||
]
|
|
||||||
return users
|
return users
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
def referer(session: Session) -> models.UserPublic:
|
def referer(session: Session) -> models.UserPublic:
|
||||||
referer = users_service.create_one(
|
referer = users_service.create_one(
|
||||||
session,
|
session,
|
||||||
users_factory.user_create_factory(
|
users_factory.user_create_factory(
|
||||||
name='test referer',
|
name='test referer',
|
||||||
email='test@test.com',
|
email='test@test.com',
|
||||||
role_names=['Légumineuses'],
|
role_names=['Légumineuses'],
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
return referer
|
return referer
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
def shipments(session: Session, forms: list[models.FormPublic], products: list[models.ProductPublic]):
|
def shipments(session: Session,
|
||||||
|
forms: list[models.FormPublic],
|
||||||
|
products: list[models.ProductPublic]):
|
||||||
shipments = [
|
shipments = [
|
||||||
shipments_service.create_one(
|
shipments_service.create_one(
|
||||||
session,
|
session,
|
||||||
shipments_factory.shipment_create_factory(
|
shipments_factory.shipment_create_factory(
|
||||||
name='test shipment 1',
|
name='test shipment 1',
|
||||||
date=datetime.date(2025, 10, 10),
|
date=datetime.date(2025, 10, 10),
|
||||||
@@ -135,7 +143,7 @@ def shipments(session: Session, forms: list[models.FormPublic], products: list[m
|
|||||||
)
|
)
|
||||||
),
|
),
|
||||||
shipments_service.create_one(
|
shipments_service.create_one(
|
||||||
session,
|
session,
|
||||||
shipments_factory.shipment_create_factory(
|
shipments_factory.shipment_create_factory(
|
||||||
name='test shipment 2',
|
name='test shipment 2',
|
||||||
date=datetime.date(2025, 11, 10),
|
date=datetime.date(2025, 11, 10),
|
||||||
@@ -146,15 +154,16 @@ def shipments(session: Session, forms: list[models.FormPublic], products: list[m
|
|||||||
]
|
]
|
||||||
return shipments
|
return shipments
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
def forms(
|
def forms(
|
||||||
session: Session,
|
session: Session,
|
||||||
productor: models.ProductorPublic,
|
productor: models.ProductorPublic,
|
||||||
referer: models.UserPublic
|
referer: models.UserPublic
|
||||||
) -> list[models.FormPublic]:
|
) -> list[models.FormPublic]:
|
||||||
forms = [
|
forms = [
|
||||||
forms_service.create_one(
|
forms_service.create_one(
|
||||||
session,
|
session,
|
||||||
forms_factory.form_create_factory(
|
forms_factory.form_create_factory(
|
||||||
name='test form 1',
|
name='test form 1',
|
||||||
productor_id=productor.id,
|
productor_id=productor.id,
|
||||||
@@ -163,7 +172,7 @@ def forms(
|
|||||||
)
|
)
|
||||||
),
|
),
|
||||||
forms_service.create_one(
|
forms_service.create_one(
|
||||||
session,
|
session,
|
||||||
forms_factory.form_create_factory(
|
forms_factory.form_create_factory(
|
||||||
name='test form 2',
|
name='test form 2',
|
||||||
productor_id=productor.id,
|
productor_id=productor.id,
|
||||||
@@ -173,4 +182,3 @@ def forms(
|
|||||||
)
|
)
|
||||||
]
|
]
|
||||||
return forms
|
return forms
|
||||||
|
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import tests.factories.contract_products as contract_products_factory
|
|||||||
|
|
||||||
from fastapi.exceptions import HTTPException
|
from fastapi.exceptions import HTTPException
|
||||||
|
|
||||||
|
|
||||||
class TestContracts:
|
class TestContracts:
|
||||||
def test_get_all(self, client, mocker, mock_session, mock_user):
|
def test_get_all(self, client, mocker, mock_session, mock_user):
|
||||||
mock_results = [
|
mock_results = [
|
||||||
@@ -31,6 +32,7 @@ class TestContracts:
|
|||||||
mock_user,
|
mock_user,
|
||||||
[],
|
[],
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_all_filters(self, client, mocker, mock_session, mock_user):
|
def test_get_all_filters(self, client, mocker, mock_session, mock_user):
|
||||||
mock_results = [
|
mock_results = [
|
||||||
contract_factory.contract_public_factory(id=2),
|
contract_factory.contract_public_factory(id=2),
|
||||||
@@ -52,10 +54,15 @@ class TestContracts:
|
|||||||
['form test'],
|
['form test'],
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_all_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_get_all_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.contracts.service.get_all')
|
mock = mocker.patch('src.contracts.service.get_all')
|
||||||
@@ -74,7 +81,7 @@ class TestContracts:
|
|||||||
'get_one',
|
'get_one',
|
||||||
return_value=mock_result
|
return_value=mock_result
|
||||||
)
|
)
|
||||||
mock_is_allowed = mocker.patch.object(
|
mocker.patch.object(
|
||||||
service,
|
service,
|
||||||
'is_allowed',
|
'is_allowed',
|
||||||
return_value=True
|
return_value=True
|
||||||
@@ -88,7 +95,7 @@ class TestContracts:
|
|||||||
mock_session,
|
mock_session,
|
||||||
2
|
2
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_one_notfound(self, client, mocker, mock_session, mock_user):
|
def test_get_one_notfound(self, client, mocker, mock_session, mock_user):
|
||||||
mock_result = None
|
mock_result = None
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
@@ -97,23 +104,27 @@ class TestContracts:
|
|||||||
return_value=mock_result
|
return_value=mock_result
|
||||||
)
|
)
|
||||||
|
|
||||||
mock_is_allowed = mocker.patch.object(
|
mocker.patch.object(
|
||||||
service,
|
service,
|
||||||
'is_allowed',
|
'is_allowed',
|
||||||
return_value=True
|
return_value=True
|
||||||
)
|
)
|
||||||
response = client.get('/api/contracts/2')
|
response = client.get('/api/contracts/2')
|
||||||
response_data = response.json()
|
|
||||||
assert response.status_code == 404
|
assert response.status_code == 404
|
||||||
mock.assert_called_once_with(
|
mock.assert_called_once_with(
|
||||||
mock_session,
|
mock_session,
|
||||||
2
|
2
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_get_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.contracts.service.get_one')
|
mock = mocker.patch('src.contracts.service.get_one')
|
||||||
@@ -127,37 +138,53 @@ class TestContracts:
|
|||||||
def test_create_one(self, client, mocker, mock_session, mock_user):
|
def test_create_one(self, client, mocker, mock_session, mock_user):
|
||||||
contract_body = contract_factory.contract_body_factory(
|
contract_body = contract_factory.contract_body_factory(
|
||||||
products=[
|
products=[
|
||||||
contract_products_factory.contract_product_body_factory(product_id=1),
|
contract_products_factory.contract_product_body_factory(
|
||||||
contract_products_factory.contract_product_body_factory(product_id=2),
|
product_id=1
|
||||||
contract_products_factory.contract_product_body_factory(product_id=3)
|
),
|
||||||
|
contract_products_factory.contract_product_body_factory(
|
||||||
|
product_id=2
|
||||||
|
),
|
||||||
|
contract_products_factory.contract_product_body_factory(
|
||||||
|
product_id=3
|
||||||
|
)
|
||||||
],
|
],
|
||||||
cheques=[{'name': '123123', 'value': '100'}]
|
cheques=[{'name': '123123', 'value': '100'}]
|
||||||
)
|
)
|
||||||
contract_result = contract_factory.contract_factory(
|
contract_result = contract_factory.contract_factory(
|
||||||
products=[
|
products=[
|
||||||
contract_products_factory.contract_product_factory(product_id=1),
|
contract_products_factory.contract_product_factory(
|
||||||
contract_products_factory.contract_product_factory(product_id=2),
|
product_id=1
|
||||||
contract_products_factory.contract_product_factory(product_id=3)
|
),
|
||||||
|
contract_products_factory.contract_product_factory(
|
||||||
|
product_id=2
|
||||||
|
),
|
||||||
|
contract_products_factory.contract_product_factory(
|
||||||
|
product_id=3
|
||||||
|
)
|
||||||
],
|
],
|
||||||
form=form_factory.form_factory(),
|
form=form_factory.form_factory(),
|
||||||
cheques=[models.Cheque(name='123123', value='100')]
|
cheques=[models.Cheque(name='123123', value='100')]
|
||||||
)
|
)
|
||||||
mock_create_one = mocker.patch.object(
|
mocker.patch.object(
|
||||||
service,
|
service,
|
||||||
'create_one',
|
'create_one',
|
||||||
return_value=contract_result
|
return_value=contract_result
|
||||||
)
|
)
|
||||||
mock_add_contract_file = mocker.patch.object(
|
mocker.patch.object(
|
||||||
service,
|
service,
|
||||||
'add_contract_file',
|
'add_contract_file',
|
||||||
return_value=True
|
return_value=True
|
||||||
)
|
)
|
||||||
mock_generate_html_contract = mocker.patch('src.contracts.generate_contract.generate_html_contract')
|
mocker.patch(
|
||||||
|
'src.contracts.generate_contract.generate_html_contract')
|
||||||
|
|
||||||
response = client.post('/api/contracts', json=contract_body)
|
response = client.post('/api/contracts', json=contract_body)
|
||||||
assert response.status_code == 200
|
assert response.status_code == 200
|
||||||
contract_id = 'test_test_test type_hiver-2026'
|
contract_id = 'test_test_test type_hiver-2026'
|
||||||
assert response.headers['Content-Disposition'] == f'attachment; filename=contract_{contract_id}.pdf'
|
assert response.headers[
|
||||||
|
'Content-Disposition'] == (
|
||||||
|
f'attachment; filename=contract_{contract_id}.pdf'
|
||||||
|
)
|
||||||
|
|
||||||
def test_delete_one(self, client, mocker, mock_session, mock_user):
|
def test_delete_one(self, client, mocker, mock_session, mock_user):
|
||||||
contract_result = contract_factory.contract_public_factory()
|
contract_result = contract_factory.contract_public_factory()
|
||||||
@@ -168,14 +195,13 @@ class TestContracts:
|
|||||||
return_value=contract_result
|
return_value=contract_result
|
||||||
)
|
)
|
||||||
|
|
||||||
mock_is_allowed = mocker.patch.object(
|
mocker.patch.object(
|
||||||
service,
|
service,
|
||||||
'is_allowed',
|
'is_allowed',
|
||||||
return_value=True
|
return_value=True
|
||||||
)
|
)
|
||||||
|
|
||||||
response = client.delete('/api/contracts/2')
|
response = client.delete('/api/contracts/2')
|
||||||
response_data = response.json()
|
|
||||||
|
|
||||||
assert response.status_code == 200
|
assert response.status_code == 200
|
||||||
mock.assert_called_once_with(
|
mock.assert_called_once_with(
|
||||||
@@ -183,7 +209,12 @@ class TestContracts:
|
|||||||
2,
|
2,
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_delete_one_notfound(self, client, mocker, mock_session, mock_user):
|
def test_delete_one_notfound(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
contract_result = None
|
contract_result = None
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
@@ -192,14 +223,13 @@ class TestContracts:
|
|||||||
return_value=contract_result
|
return_value=contract_result
|
||||||
)
|
)
|
||||||
|
|
||||||
mock_is_allowed = mocker.patch.object(
|
mocker.patch.object(
|
||||||
service,
|
service,
|
||||||
'is_allowed',
|
'is_allowed',
|
||||||
return_value=True
|
return_value=True
|
||||||
)
|
)
|
||||||
|
|
||||||
response = client.delete('/api/contracts/2')
|
response = client.delete('/api/contracts/2')
|
||||||
response_data = response.json()
|
|
||||||
|
|
||||||
assert response.status_code == 404
|
assert response.status_code == 404
|
||||||
mock.assert_called_once_with(
|
mock.assert_called_once_with(
|
||||||
@@ -207,11 +237,15 @@ class TestContracts:
|
|||||||
2,
|
2,
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_delete_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_delete_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
contract_body = contract_factory.contract_body_factory()
|
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.contracts.service.delete_one')
|
mock = mocker.patch('src.contracts.service.delete_one')
|
||||||
@@ -220,4 +254,4 @@ class TestContracts:
|
|||||||
assert response.status_code == 401
|
assert response.status_code == 401
|
||||||
mock.assert_not_called()
|
mock.assert_not_called()
|
||||||
|
|
||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import tests.factories.forms as form_factory
|
|||||||
from fastapi.exceptions import HTTPException
|
from fastapi.exceptions import HTTPException
|
||||||
import src.messages as messages
|
import src.messages as messages
|
||||||
|
|
||||||
|
|
||||||
class TestForms:
|
class TestForms:
|
||||||
def test_get_all(self, client, mocker, mock_session, mock_user):
|
def test_get_all(self, client, mocker, mock_session, mock_user):
|
||||||
mock_results = [
|
mock_results = [
|
||||||
@@ -32,6 +33,7 @@ class TestForms:
|
|||||||
False,
|
False,
|
||||||
mock_user,
|
mock_user,
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_all_filters(self, client, mocker, mock_session, mock_user):
|
def test_get_all_filters(self, client, mocker, mock_session, mock_user):
|
||||||
mock_results = [
|
mock_results = [
|
||||||
form_factory.form_public_factory(name="test 2", id=2),
|
form_factory.form_public_factory(name="test 2", id=2),
|
||||||
@@ -42,7 +44,8 @@ class TestForms:
|
|||||||
return_value=mock_results
|
return_value=mock_results
|
||||||
)
|
)
|
||||||
|
|
||||||
response = client.get('/api/forms/referents?current_season=true&seasons=hiver-2025&productors=test productor')
|
response = client.get(
|
||||||
|
'/api/forms/referents?current_season=true&seasons=hiver-2025&productors=test productor')
|
||||||
response_data = response.json()
|
response_data = response.json()
|
||||||
assert response.status_code == 200
|
assert response.status_code == 200
|
||||||
assert response_data[0]['id'] == 2
|
assert response_data[0]['id'] == 2
|
||||||
@@ -55,10 +58,15 @@ class TestForms:
|
|||||||
mock_user,
|
mock_user,
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_all_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_get_all_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.forms.service.get_all')
|
mock = mocker.patch('src.forms.service.get_all')
|
||||||
@@ -87,7 +95,7 @@ class TestForms:
|
|||||||
mock_session,
|
mock_session,
|
||||||
2
|
2
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_one_notfound(self, client, mocker, mock_session, mock_user):
|
def test_get_one_notfound(self, client, mocker, mock_session, mock_user):
|
||||||
mock_result = None
|
mock_result = None
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
@@ -102,8 +110,7 @@ class TestForms:
|
|||||||
mock_session,
|
mock_session,
|
||||||
2
|
2
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
def test_create_one(self, client, mocker, mock_session, mock_user):
|
def test_create_one(self, client, mocker, mock_session, mock_user):
|
||||||
form_body = form_factory.form_body_factory(name='test form create')
|
form_body = form_factory.form_body_factory(name='test form create')
|
||||||
form_create = form_factory.form_create_factory(name='test form create')
|
form_create = form_factory.form_create_factory(name='test form create')
|
||||||
@@ -124,16 +131,17 @@ class TestForms:
|
|||||||
mock_session,
|
mock_session,
|
||||||
form_create
|
form_create
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_create_one_referer_notfound(self, client, mocker, mock_session, mock_user):
|
def test_create_one_referer_notfound(
|
||||||
form_body = form_factory.form_body_factory(name='test form create', referer_id=12312)
|
self, client, mocker, mock_session, mock_user):
|
||||||
form_create = form_factory.form_create_factory(name='test form create', referer_id=12312)
|
form_body = form_factory.form_body_factory(
|
||||||
|
name='test form create', referer_id=12312)
|
||||||
|
form_create = form_factory.form_create_factory(
|
||||||
|
name='test form create', referer_id=12312)
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service, 'create_one', side_effect=forms_exceptions.UserNotFoundError(
|
||||||
'create_one',
|
messages.Messages.not_found('referer')))
|
||||||
side_effect=forms_exceptions.UserNotFoundError(messages.Messages.not_found('referer'))
|
|
||||||
)
|
|
||||||
|
|
||||||
response = client.post('/api/forms', json=form_body)
|
response = client.post('/api/forms', json=form_body)
|
||||||
response_data = response.json()
|
response_data = response.json()
|
||||||
@@ -144,15 +152,16 @@ class TestForms:
|
|||||||
form_create
|
form_create
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_create_one_productor_notfound(self, client, mocker, mock_session, mock_user):
|
def test_create_one_productor_notfound(
|
||||||
form_body = form_factory.form_body_factory(name='test form create', productor_id=1231)
|
self, client, mocker, mock_session, mock_user):
|
||||||
form_create = form_factory.form_create_factory(name='test form create', productor_id=1231)
|
form_body = form_factory.form_body_factory(
|
||||||
|
name='test form create', productor_id=1231)
|
||||||
|
form_create = form_factory.form_create_factory(
|
||||||
|
name='test form create', productor_id=1231)
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service, 'create_one', side_effect=forms_exceptions.ProductorNotFoundError(
|
||||||
'create_one',
|
messages.Messages.not_found('productor')))
|
||||||
side_effect=forms_exceptions.ProductorNotFoundError(messages.Messages.not_found('productor'))
|
|
||||||
)
|
|
||||||
|
|
||||||
response = client.post('/api/forms', json=form_body)
|
response = client.post('/api/forms', json=form_body)
|
||||||
response_data = response.json()
|
response_data = response.json()
|
||||||
@@ -163,11 +172,16 @@ class TestForms:
|
|||||||
form_create
|
form_create
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_create_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_create_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
form_body = form_factory.form_body_factory(name='test form create')
|
form_body = form_factory.form_body_factory(name='test form create')
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.forms.service.create_one')
|
mock = mocker.patch('src.forms.service.create_one')
|
||||||
@@ -200,35 +214,18 @@ class TestForms:
|
|||||||
form_update
|
form_update
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_update_one_notfound(self, client, mocker, mock_session, mock_user):
|
def test_update_one_notfound(
|
||||||
form_body = form_factory.form_body_factory(name='test form update')
|
self,
|
||||||
form_update = form_factory.form_update_factory(name='test form update')
|
client,
|
||||||
|
mocker,
|
||||||
mock = mocker.patch.object(
|
|
||||||
service,
|
|
||||||
'update_one',
|
|
||||||
side_effect=forms_exceptions.FormNotFoundError(messages.Messages.not_found('form'))
|
|
||||||
)
|
|
||||||
|
|
||||||
response = client.put('/api/forms/2', json=form_body)
|
|
||||||
response_data = response.json()
|
|
||||||
|
|
||||||
assert response.status_code == 404
|
|
||||||
mock.assert_called_once_with(
|
|
||||||
mock_session,
|
mock_session,
|
||||||
2,
|
mock_user):
|
||||||
form_update
|
|
||||||
)
|
|
||||||
|
|
||||||
def test_update_one_referer_notfound(self, client, mocker, mock_session, mock_user):
|
|
||||||
form_body = form_factory.form_body_factory(name='test form update')
|
form_body = form_factory.form_body_factory(name='test form update')
|
||||||
form_update = form_factory.form_update_factory(name='test form update')
|
form_update = form_factory.form_update_factory(name='test form update')
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service, 'update_one', side_effect=forms_exceptions.FormNotFoundError(
|
||||||
'update_one',
|
messages.Messages.not_found('form')))
|
||||||
side_effect=forms_exceptions.UserNotFoundError(messages.Messages.not_found('referer'))
|
|
||||||
)
|
|
||||||
|
|
||||||
response = client.put('/api/forms/2', json=form_body)
|
response = client.put('/api/forms/2', json=form_body)
|
||||||
response_data = response.json()
|
response_data = response.json()
|
||||||
@@ -240,15 +237,14 @@ class TestForms:
|
|||||||
form_update
|
form_update
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_update_one_productor_notfound(self, client, mocker, mock_session, mock_user):
|
def test_update_one_referer_notfound(
|
||||||
|
self, client, mocker, mock_session, mock_user):
|
||||||
form_body = form_factory.form_body_factory(name='test form update')
|
form_body = form_factory.form_body_factory(name='test form update')
|
||||||
form_update = form_factory.form_update_factory(name='test form update')
|
form_update = form_factory.form_update_factory(name='test form update')
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service, 'update_one', side_effect=forms_exceptions.UserNotFoundError(
|
||||||
'update_one',
|
messages.Messages.not_found('referer')))
|
||||||
side_effect=forms_exceptions.ProductorNotFoundError(messages.Messages.not_found('productor'))
|
|
||||||
)
|
|
||||||
|
|
||||||
response = client.put('/api/forms/2', json=form_body)
|
response = client.put('/api/forms/2', json=form_body)
|
||||||
response_data = response.json()
|
response_data = response.json()
|
||||||
@@ -260,11 +256,35 @@ class TestForms:
|
|||||||
form_update
|
form_update
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_update_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_update_one_productor_notfound(
|
||||||
|
self, client, mocker, mock_session, mock_user):
|
||||||
|
form_body = form_factory.form_body_factory(name='test form update')
|
||||||
|
form_update = form_factory.form_update_factory(name='test form update')
|
||||||
|
|
||||||
|
mock = mocker.patch.object(
|
||||||
|
service, 'update_one', side_effect=forms_exceptions.ProductorNotFoundError(
|
||||||
|
messages.Messages.not_found('productor')))
|
||||||
|
|
||||||
|
response = client.put('/api/forms/2', json=form_body)
|
||||||
|
response_data = response.json()
|
||||||
|
|
||||||
|
assert response.status_code == 404
|
||||||
|
mock.assert_called_once_with(
|
||||||
|
mock_session,
|
||||||
|
2,
|
||||||
|
form_update
|
||||||
|
)
|
||||||
|
|
||||||
|
def test_update_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
form_body = form_factory.form_body_factory(name='test form update')
|
form_body = form_factory.form_body_factory(name='test form update')
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.forms.service.update_one')
|
mock = mocker.patch('src.forms.service.update_one')
|
||||||
@@ -294,14 +314,17 @@ class TestForms:
|
|||||||
2,
|
2,
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_delete_one_notfound(self, client, mocker, mock_session, mock_user):
|
def test_delete_one_notfound(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
form_result = None
|
form_result = None
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service, 'delete_one', side_effect=forms_exceptions.FormNotFoundError(
|
||||||
'delete_one',
|
messages.Messages.not_found('form')))
|
||||||
side_effect=forms_exceptions.FormNotFoundError(messages.Messages.not_found('form'))
|
|
||||||
)
|
|
||||||
|
|
||||||
response = client.delete('/api/forms/2')
|
response = client.delete('/api/forms/2')
|
||||||
response_data = response.json()
|
response_data = response.json()
|
||||||
@@ -312,10 +335,15 @@ class TestForms:
|
|||||||
2,
|
2,
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_delete_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_delete_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.forms.service.delete_one')
|
mock = mocker.patch('src.forms.service.delete_one')
|
||||||
@@ -324,4 +352,4 @@ class TestForms:
|
|||||||
assert response.status_code == 401
|
assert response.status_code == 401
|
||||||
mock.assert_not_called()
|
mock.assert_not_called()
|
||||||
|
|
||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ import src.productors.exceptions as exceptions
|
|||||||
|
|
||||||
import tests.factories.productors as productor_factory
|
import tests.factories.productors as productor_factory
|
||||||
|
|
||||||
|
|
||||||
class TestProductors:
|
class TestProductors:
|
||||||
def test_get_all(self, client, mocker, mock_session, mock_user):
|
def test_get_all(self, client, mocker, mock_session, mock_user):
|
||||||
mock_results = [
|
mock_results = [
|
||||||
@@ -34,6 +35,7 @@ class TestProductors:
|
|||||||
[],
|
[],
|
||||||
[],
|
[],
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_all_filters(self, client, mocker, mock_session, mock_user):
|
def test_get_all_filters(self, client, mocker, mock_session, mock_user):
|
||||||
mock_results = [
|
mock_results = [
|
||||||
productor_factory.productor_public_factory(name="test 2", id=2),
|
productor_factory.productor_public_factory(name="test 2", id=2),
|
||||||
@@ -44,7 +46,8 @@ class TestProductors:
|
|||||||
return_value=mock_results
|
return_value=mock_results
|
||||||
)
|
)
|
||||||
|
|
||||||
response = client.get('/api/productors?types=Légumineuses&names=test 2')
|
response = client.get(
|
||||||
|
'/api/productors?types=Légumineuses&names=test 2')
|
||||||
response_data = response.json()
|
response_data = response.json()
|
||||||
assert response.status_code == 200
|
assert response.status_code == 200
|
||||||
assert response_data[0]['id'] == 2
|
assert response_data[0]['id'] == 2
|
||||||
@@ -56,10 +59,15 @@ class TestProductors:
|
|||||||
['Légumineuses'],
|
['Légumineuses'],
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_all_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_get_all_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.productors.service.get_all')
|
mock = mocker.patch('src.productors.service.get_all')
|
||||||
@@ -71,7 +79,8 @@ class TestProductors:
|
|||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|
||||||
def test_get_one(self, client, mocker, mock_session, mock_user):
|
def test_get_one(self, client, mocker, mock_session, mock_user):
|
||||||
mock_result = productor_factory.productor_public_factory(name="test 2", id=2)
|
mock_result = productor_factory.productor_public_factory(
|
||||||
|
name="test 2", id=2)
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service,
|
||||||
@@ -88,7 +97,7 @@ class TestProductors:
|
|||||||
mock_session,
|
mock_session,
|
||||||
2
|
2
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_one_notfound(self, client, mocker, mock_session, mock_user):
|
def test_get_one_notfound(self, client, mocker, mock_session, mock_user):
|
||||||
mock_result = None
|
mock_result = None
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
@@ -103,11 +112,16 @@ class TestProductors:
|
|||||||
mock_session,
|
mock_session,
|
||||||
2
|
2
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_get_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.productors.service.get_one')
|
mock = mocker.patch('src.productors.service.get_one')
|
||||||
@@ -117,11 +131,14 @@ class TestProductors:
|
|||||||
mock.assert_not_called()
|
mock.assert_not_called()
|
||||||
|
|
||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|
||||||
def test_create_one(self, client, mocker, mock_session, mock_user):
|
def test_create_one(self, client, mocker, mock_session, mock_user):
|
||||||
productor_body = productor_factory.productor_body_factory(name='test productor create')
|
productor_body = productor_factory.productor_body_factory(
|
||||||
productor_create = productor_factory.productor_create_factory(name='test productor create')
|
name='test productor create')
|
||||||
productor_result = productor_factory.productor_public_factory(name='test productor create')
|
productor_create = productor_factory.productor_create_factory(
|
||||||
|
name='test productor create')
|
||||||
|
productor_result = productor_factory.productor_public_factory(
|
||||||
|
name='test productor create')
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service,
|
||||||
@@ -139,11 +156,17 @@ class TestProductors:
|
|||||||
productor_create
|
productor_create
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_create_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_create_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
productor_body = productor_factory.productor_body_factory(name='test productor create')
|
productor_body = productor_factory.productor_body_factory(
|
||||||
|
name='test productor create')
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.productors.service.create_one')
|
mock = mocker.patch('src.productors.service.create_one')
|
||||||
@@ -155,9 +178,12 @@ class TestProductors:
|
|||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|
||||||
def test_update_one(self, client, mocker, mock_session, mock_user):
|
def test_update_one(self, client, mocker, mock_session, mock_user):
|
||||||
productor_body = productor_factory.productor_body_factory(name='test productor update')
|
productor_body = productor_factory.productor_body_factory(
|
||||||
productor_update = productor_factory.productor_update_factory(name='test productor update')
|
name='test productor update')
|
||||||
productor_result = productor_factory.productor_public_factory(name='test productor update')
|
productor_update = productor_factory.productor_update_factory(
|
||||||
|
name='test productor update')
|
||||||
|
productor_result = productor_factory.productor_public_factory(
|
||||||
|
name='test productor update')
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service,
|
||||||
@@ -176,16 +202,21 @@ class TestProductors:
|
|||||||
productor_update
|
productor_update
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_update_one_notfound(self, client, mocker, mock_session, mock_user):
|
def test_update_one_notfound(
|
||||||
productor_body = productor_factory.productor_body_factory(name='test productor update')
|
self,
|
||||||
productor_update = productor_factory.productor_update_factory(name='test productor update')
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
|
productor_body = productor_factory.productor_body_factory(
|
||||||
|
name='test productor update')
|
||||||
|
productor_update = productor_factory.productor_update_factory(
|
||||||
|
name='test productor update')
|
||||||
productor_result = None
|
productor_result = None
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service, 'update_one', side_effect=exceptions.ProductorNotFoundError(
|
||||||
'update_one',
|
messages.Messages.not_found('productor')))
|
||||||
side_effect=exceptions.ProductorNotFoundError(messages.Messages.not_found('productor'))
|
|
||||||
)
|
|
||||||
|
|
||||||
response = client.put('/api/productors/2', json=productor_body)
|
response = client.put('/api/productors/2', json=productor_body)
|
||||||
response_data = response.json()
|
response_data = response.json()
|
||||||
@@ -197,11 +228,17 @@ class TestProductors:
|
|||||||
productor_update
|
productor_update
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_update_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_update_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
productor_body = productor_factory.productor_body_factory(name='test productor update')
|
productor_body = productor_factory.productor_body_factory(
|
||||||
|
name='test productor update')
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.productors.service.update_one')
|
mock = mocker.patch('src.productors.service.update_one')
|
||||||
@@ -213,7 +250,8 @@ class TestProductors:
|
|||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|
||||||
def test_delete_one(self, client, mocker, mock_session, mock_user):
|
def test_delete_one(self, client, mocker, mock_session, mock_user):
|
||||||
productor_result = productor_factory.productor_public_factory(name='test productor delete')
|
productor_result = productor_factory.productor_public_factory(
|
||||||
|
name='test productor delete')
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service,
|
||||||
@@ -231,14 +269,17 @@ class TestProductors:
|
|||||||
2,
|
2,
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_delete_one_notfound(self, client, mocker, mock_session, mock_user):
|
def test_delete_one_notfound(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
productor_result = None
|
productor_result = None
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service, 'delete_one', side_effect=exceptions.ProductorNotFoundError(
|
||||||
'delete_one',
|
messages.Messages.not_found('productor')))
|
||||||
side_effect=exceptions.ProductorNotFoundError(messages.Messages.not_found('productor'))
|
|
||||||
)
|
|
||||||
|
|
||||||
response = client.delete('/api/productors/2')
|
response = client.delete('/api/productors/2')
|
||||||
response_data = response.json()
|
response_data = response.json()
|
||||||
@@ -249,11 +290,17 @@ class TestProductors:
|
|||||||
2,
|
2,
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_delete_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_delete_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
productor_body = productor_factory.productor_body_factory(name='test productor delete')
|
productor_body = productor_factory.productor_body_factory(
|
||||||
|
name='test productor delete')
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.productors.service.delete_one')
|
mock = mocker.patch('src.productors.service.delete_one')
|
||||||
@@ -262,4 +309,4 @@ class TestProductors:
|
|||||||
assert response.status_code == 401
|
assert response.status_code == 401
|
||||||
mock.assert_not_called()
|
mock.assert_not_called()
|
||||||
|
|
||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import tests.factories.products as product_factory
|
|||||||
|
|
||||||
from fastapi.exceptions import HTTPException
|
from fastapi.exceptions import HTTPException
|
||||||
|
|
||||||
|
|
||||||
class TestProducts:
|
class TestProducts:
|
||||||
def test_get_all(self, client, mocker, mock_session, mock_user):
|
def test_get_all(self, client, mocker, mock_session, mock_user):
|
||||||
mock_results = [
|
mock_results = [
|
||||||
@@ -32,6 +33,7 @@ class TestProducts:
|
|||||||
[],
|
[],
|
||||||
[]
|
[]
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_all_filters(self, client, mocker, mock_session, mock_user):
|
def test_get_all_filters(self, client, mocker, mock_session, mock_user):
|
||||||
mock_results = [
|
mock_results = [
|
||||||
product_factory.product_public_factory(name="test 2", id=2),
|
product_factory.product_public_factory(name="test 2", id=2),
|
||||||
@@ -55,10 +57,15 @@ class TestProducts:
|
|||||||
['1'],
|
['1'],
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_all_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_get_all_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.products.service.get_all')
|
mock = mocker.patch('src.products.service.get_all')
|
||||||
@@ -70,7 +77,8 @@ class TestProducts:
|
|||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|
||||||
def test_get_one(self, client, mocker, mock_session, mock_user):
|
def test_get_one(self, client, mocker, mock_session, mock_user):
|
||||||
mock_result = product_factory.product_public_factory(name="test 2", id=2)
|
mock_result = product_factory.product_public_factory(
|
||||||
|
name="test 2", id=2)
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service,
|
||||||
@@ -87,7 +95,7 @@ class TestProducts:
|
|||||||
mock_session,
|
mock_session,
|
||||||
2
|
2
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_one_notfound(self, client, mocker, mock_session, mock_user):
|
def test_get_one_notfound(self, client, mocker, mock_session, mock_user):
|
||||||
mock_result = None
|
mock_result = None
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
@@ -102,11 +110,16 @@ class TestProducts:
|
|||||||
mock_session,
|
mock_session,
|
||||||
2
|
2
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_get_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.products.service.get_one')
|
mock = mocker.patch('src.products.service.get_one')
|
||||||
@@ -116,11 +129,14 @@ class TestProducts:
|
|||||||
mock.assert_not_called()
|
mock.assert_not_called()
|
||||||
|
|
||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|
||||||
def test_create_one(self, client, mocker, mock_session, mock_user):
|
def test_create_one(self, client, mocker, mock_session, mock_user):
|
||||||
product_body = product_factory.product_body_factory(name='test product create')
|
product_body = product_factory.product_body_factory(
|
||||||
product_create = product_factory.product_create_factory(name='test product create')
|
name='test product create')
|
||||||
product_result = product_factory.product_public_factory(name='test product create')
|
product_create = product_factory.product_create_factory(
|
||||||
|
name='test product create')
|
||||||
|
product_result = product_factory.product_public_factory(
|
||||||
|
name='test product create')
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service,
|
||||||
@@ -138,11 +154,17 @@ class TestProducts:
|
|||||||
product_create
|
product_create
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_create_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_create_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
product_body = product_factory.product_body_factory(name='test product create')
|
product_body = product_factory.product_body_factory(
|
||||||
|
name='test product create')
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.products.service.create_one')
|
mock = mocker.patch('src.products.service.create_one')
|
||||||
@@ -154,9 +176,12 @@ class TestProducts:
|
|||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|
||||||
def test_update_one(self, client, mocker, mock_session, mock_user):
|
def test_update_one(self, client, mocker, mock_session, mock_user):
|
||||||
product_body = product_factory.product_body_factory(name='test product update')
|
product_body = product_factory.product_body_factory(
|
||||||
product_update = product_factory.product_update_factory(name='test product update')
|
name='test product update')
|
||||||
product_result = product_factory.product_public_factory(name='test product update')
|
product_update = product_factory.product_update_factory(
|
||||||
|
name='test product update')
|
||||||
|
product_result = product_factory.product_public_factory(
|
||||||
|
name='test product update')
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service,
|
||||||
@@ -175,9 +200,16 @@ class TestProducts:
|
|||||||
product_update
|
product_update
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_update_one_notfound(self, client, mocker, mock_session, mock_user):
|
def test_update_one_notfound(
|
||||||
product_body = product_factory.product_body_factory(name='test product update')
|
self,
|
||||||
product_update = product_factory.product_update_factory(name='test product update')
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
|
product_body = product_factory.product_body_factory(
|
||||||
|
name='test product update')
|
||||||
|
product_update = product_factory.product_update_factory(
|
||||||
|
name='test product update')
|
||||||
product_result = None
|
product_result = None
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
@@ -196,11 +228,17 @@ class TestProducts:
|
|||||||
product_update
|
product_update
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_update_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_update_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
product_body = product_factory.product_body_factory(name='test product update')
|
product_body = product_factory.product_body_factory(
|
||||||
|
name='test product update')
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.products.service.update_one')
|
mock = mocker.patch('src.products.service.update_one')
|
||||||
@@ -212,7 +250,8 @@ class TestProducts:
|
|||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|
||||||
def test_delete_one(self, client, mocker, mock_session, mock_user):
|
def test_delete_one(self, client, mocker, mock_session, mock_user):
|
||||||
product_result = product_factory.product_public_factory(name='test product delete')
|
product_result = product_factory.product_public_factory(
|
||||||
|
name='test product delete')
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service,
|
||||||
@@ -230,7 +269,12 @@ class TestProducts:
|
|||||||
2,
|
2,
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_delete_one_notfound(self, client, mocker, mock_session, mock_user):
|
def test_delete_one_notfound(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
product_result = None
|
product_result = None
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
@@ -248,11 +292,17 @@ class TestProducts:
|
|||||||
2,
|
2,
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_delete_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_delete_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
product_body = product_factory.product_body_factory(name='test product delete')
|
product_body = product_factory.product_body_factory(
|
||||||
|
name='test product delete')
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.products.service.delete_one')
|
mock = mocker.patch('src.products.service.delete_one')
|
||||||
@@ -261,4 +311,4 @@ class TestProducts:
|
|||||||
assert response.status_code == 401
|
assert response.status_code == 401
|
||||||
mock.assert_not_called()
|
mock.assert_not_called()
|
||||||
|
|
||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import tests.factories.shipments as shipment_factory
|
|||||||
|
|
||||||
from fastapi.exceptions import HTTPException
|
from fastapi.exceptions import HTTPException
|
||||||
|
|
||||||
|
|
||||||
class TestShipments:
|
class TestShipments:
|
||||||
def test_get_all(self, client, mocker, mock_session, mock_user):
|
def test_get_all(self, client, mocker, mock_session, mock_user):
|
||||||
mock_results = [
|
mock_results = [
|
||||||
@@ -33,6 +34,7 @@ class TestShipments:
|
|||||||
[],
|
[],
|
||||||
[],
|
[],
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_all_filters(self, client, mocker, mock_session, mock_user):
|
def test_get_all_filters(self, client, mocker, mock_session, mock_user):
|
||||||
mock_results = [
|
mock_results = [
|
||||||
shipment_factory.shipment_public_factory(name="test 2", id=2),
|
shipment_factory.shipment_public_factory(name="test 2", id=2),
|
||||||
@@ -43,7 +45,8 @@ class TestShipments:
|
|||||||
return_value=mock_results
|
return_value=mock_results
|
||||||
)
|
)
|
||||||
|
|
||||||
response = client.get('/api/shipments?dates=2025-10-10&names=test 2&forms=contract form 1')
|
response = client.get(
|
||||||
|
'/api/shipments?dates=2025-10-10&names=test 2&forms=contract form 1')
|
||||||
response_data = response.json()
|
response_data = response.json()
|
||||||
assert response.status_code == 200
|
assert response.status_code == 200
|
||||||
assert response_data[0]['id'] == 2
|
assert response_data[0]['id'] == 2
|
||||||
@@ -56,10 +59,15 @@ class TestShipments:
|
|||||||
['contract form 1'],
|
['contract form 1'],
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_all_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_get_all_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.shipments.service.get_all')
|
mock = mocker.patch('src.shipments.service.get_all')
|
||||||
@@ -71,7 +79,8 @@ class TestShipments:
|
|||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|
||||||
def test_get_one(self, client, mocker, mock_session, mock_user):
|
def test_get_one(self, client, mocker, mock_session, mock_user):
|
||||||
mock_result = shipment_factory.shipment_public_factory(name="test 2", id=2)
|
mock_result = shipment_factory.shipment_public_factory(
|
||||||
|
name="test 2", id=2)
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service,
|
||||||
@@ -88,7 +97,7 @@ class TestShipments:
|
|||||||
mock_session,
|
mock_session,
|
||||||
2
|
2
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_one_notfound(self, client, mocker, mock_session, mock_user):
|
def test_get_one_notfound(self, client, mocker, mock_session, mock_user):
|
||||||
mock_result = None
|
mock_result = None
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
@@ -103,11 +112,16 @@ class TestShipments:
|
|||||||
mock_session,
|
mock_session,
|
||||||
2
|
2
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_get_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.shipments.service.get_one')
|
mock = mocker.patch('src.shipments.service.get_one')
|
||||||
@@ -117,11 +131,14 @@ class TestShipments:
|
|||||||
mock.assert_not_called()
|
mock.assert_not_called()
|
||||||
|
|
||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|
||||||
def test_create_one(self, client, mocker, mock_session, mock_user):
|
def test_create_one(self, client, mocker, mock_session, mock_user):
|
||||||
shipment_body = shipment_factory.shipment_body_factory(name='test shipment create')
|
shipment_body = shipment_factory.shipment_body_factory(
|
||||||
shipment_create = shipment_factory.shipment_create_factory(name='test shipment create')
|
name='test shipment create')
|
||||||
shipment_result = shipment_factory.shipment_public_factory(name='test shipment create')
|
shipment_create = shipment_factory.shipment_create_factory(
|
||||||
|
name='test shipment create')
|
||||||
|
shipment_result = shipment_factory.shipment_public_factory(
|
||||||
|
name='test shipment create')
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service,
|
||||||
@@ -139,11 +156,17 @@ class TestShipments:
|
|||||||
shipment_create
|
shipment_create
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_create_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_create_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
shipment_body = shipment_factory.shipment_body_factory(name='test shipment create')
|
shipment_body = shipment_factory.shipment_body_factory(
|
||||||
|
name='test shipment create')
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.shipments.service.create_one')
|
mock = mocker.patch('src.shipments.service.create_one')
|
||||||
@@ -155,9 +178,12 @@ class TestShipments:
|
|||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|
||||||
def test_update_one(self, client, mocker, mock_session, mock_user):
|
def test_update_one(self, client, mocker, mock_session, mock_user):
|
||||||
shipment_body = shipment_factory.shipment_body_factory(name='test shipment update')
|
shipment_body = shipment_factory.shipment_body_factory(
|
||||||
shipment_update = shipment_factory.shipment_update_factory(name='test shipment update')
|
name='test shipment update')
|
||||||
shipment_result = shipment_factory.shipment_public_factory(name='test shipment update')
|
shipment_update = shipment_factory.shipment_update_factory(
|
||||||
|
name='test shipment update')
|
||||||
|
shipment_result = shipment_factory.shipment_public_factory(
|
||||||
|
name='test shipment update')
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service,
|
||||||
@@ -176,15 +202,20 @@ class TestShipments:
|
|||||||
shipment_update
|
shipment_update
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_update_one_notfound(self, client, mocker, mock_session, mock_user):
|
def test_update_one_notfound(
|
||||||
shipment_body = shipment_factory.shipment_body_factory(name='test shipment update')
|
self,
|
||||||
shipment_update = shipment_factory.shipment_update_factory(name='test shipment update')
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
|
shipment_body = shipment_factory.shipment_body_factory(
|
||||||
|
name='test shipment update')
|
||||||
|
shipment_update = shipment_factory.shipment_update_factory(
|
||||||
|
name='test shipment update')
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service, 'update_one', side_effect=exceptions.ShipmentNotFoundError(
|
||||||
'update_one',
|
messages.Messages.not_found('shipment')))
|
||||||
side_effect=exceptions.ShipmentNotFoundError(messages.Messages.not_found('shipment'))
|
|
||||||
)
|
|
||||||
|
|
||||||
response = client.put('/api/shipments/2', json=shipment_body)
|
response = client.put('/api/shipments/2', json=shipment_body)
|
||||||
response_data = response.json()
|
response_data = response.json()
|
||||||
@@ -196,11 +227,17 @@ class TestShipments:
|
|||||||
shipment_update
|
shipment_update
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_update_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_update_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
shipment_body = shipment_factory.shipment_body_factory(name='test shipment update')
|
shipment_body = shipment_factory.shipment_body_factory(
|
||||||
|
name='test shipment update')
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.shipments.service.update_one')
|
mock = mocker.patch('src.shipments.service.update_one')
|
||||||
@@ -212,7 +249,8 @@ class TestShipments:
|
|||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|
||||||
def test_delete_one(self, client, mocker, mock_session, mock_user):
|
def test_delete_one(self, client, mocker, mock_session, mock_user):
|
||||||
shipment_result = shipment_factory.shipment_public_factory(name='test shipment delete')
|
shipment_result = shipment_factory.shipment_public_factory(
|
||||||
|
name='test shipment delete')
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service,
|
||||||
@@ -230,14 +268,17 @@ class TestShipments:
|
|||||||
2,
|
2,
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_delete_one_notfound(self, client, mocker, mock_session, mock_user):
|
def test_delete_one_notfound(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
shipment_result = None
|
shipment_result = None
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
service,
|
service, 'delete_one', side_effect=exceptions.ShipmentNotFoundError(
|
||||||
'delete_one',
|
messages.Messages.not_found('shipment')))
|
||||||
side_effect=exceptions.ShipmentNotFoundError(messages.Messages.not_found('shipment'))
|
|
||||||
)
|
|
||||||
|
|
||||||
response = client.delete('/api/shipments/2')
|
response = client.delete('/api/shipments/2')
|
||||||
response_data = response.json()
|
response_data = response.json()
|
||||||
@@ -248,11 +289,17 @@ class TestShipments:
|
|||||||
2,
|
2,
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_delete_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_delete_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
shipment_body = shipment_factory.shipment_body_factory(name='test shipment delete')
|
shipment_body = shipment_factory.shipment_body_factory(
|
||||||
|
name='test shipment delete')
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.shipments.service.delete_one')
|
mock = mocker.patch('src.shipments.service.delete_one')
|
||||||
@@ -261,4 +308,4 @@ class TestShipments:
|
|||||||
assert response.status_code == 401
|
assert response.status_code == 401
|
||||||
mock.assert_not_called()
|
mock.assert_not_called()
|
||||||
|
|
||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import src.users.exceptions as exceptions
|
|||||||
|
|
||||||
from fastapi.exceptions import HTTPException
|
from fastapi.exceptions import HTTPException
|
||||||
|
|
||||||
|
|
||||||
class TestUsers:
|
class TestUsers:
|
||||||
def test_get_all(self, client, mocker, mock_session, mock_user):
|
def test_get_all(self, client, mocker, mock_session, mock_user):
|
||||||
mock_results = [
|
mock_results = [
|
||||||
@@ -30,6 +31,7 @@ class TestUsers:
|
|||||||
[],
|
[],
|
||||||
[],
|
[],
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_all_filters(self, client, mocker, mock_session, mock_user):
|
def test_get_all_filters(self, client, mocker, mock_session, mock_user):
|
||||||
mock_results = [
|
mock_results = [
|
||||||
user_factory.user_public_factory(name="test 2", id=2),
|
user_factory.user_public_factory(name="test 2", id=2),
|
||||||
@@ -51,10 +53,15 @@ class TestUsers:
|
|||||||
['test@test.test'],
|
['test@test.test'],
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_all_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_get_all_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.users.service.get_all')
|
mock = mocker.patch('src.users.service.get_all')
|
||||||
@@ -83,7 +90,7 @@ class TestUsers:
|
|||||||
mock_session,
|
mock_session,
|
||||||
2
|
2
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_one_notfound(self, client, mocker, mock_session, mock_user):
|
def test_get_one_notfound(self, client, mocker, mock_session, mock_user):
|
||||||
mock_result = None
|
mock_result = None
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
@@ -98,11 +105,16 @@ class TestUsers:
|
|||||||
mock_session,
|
mock_session,
|
||||||
2
|
2
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_get_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_get_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.users.service.get_one')
|
mock = mocker.patch('src.users.service.get_one')
|
||||||
@@ -112,7 +124,7 @@ class TestUsers:
|
|||||||
mock.assert_not_called()
|
mock.assert_not_called()
|
||||||
|
|
||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|
||||||
def test_create_one(self, client, mocker, mock_session, mock_user):
|
def test_create_one(self, client, mocker, mock_session, mock_user):
|
||||||
user_body = user_factory.user_body_factory(name='test user create')
|
user_body = user_factory.user_body_factory(name='test user create')
|
||||||
user_create = user_factory.user_create_factory(name='test user create')
|
user_create = user_factory.user_create_factory(name='test user create')
|
||||||
@@ -134,11 +146,16 @@ class TestUsers:
|
|||||||
user_create
|
user_create
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_create_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_create_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
user_body = user_factory.user_body_factory(name='test user create')
|
user_body = user_factory.user_body_factory(name='test user create')
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.users.service.create_one')
|
mock = mocker.patch('src.users.service.create_one')
|
||||||
@@ -171,7 +188,12 @@ class TestUsers:
|
|||||||
user_update
|
user_update
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_update_one_notfound(self, client, mocker, mock_session, mock_user):
|
def test_update_one_notfound(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
user_body = user_factory.user_body_factory(name='test user update')
|
user_body = user_factory.user_body_factory(name='test user update')
|
||||||
user_update = user_factory.user_update_factory(name='test user update')
|
user_update = user_factory.user_update_factory(name='test user update')
|
||||||
user_result = None
|
user_result = None
|
||||||
@@ -192,11 +214,16 @@ class TestUsers:
|
|||||||
user_update
|
user_update
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_update_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_update_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
user_body = user_factory.user_body_factory(name='test user update')
|
user_body = user_factory.user_body_factory(name='test user update')
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.users.service.update_one')
|
mock = mocker.patch('src.users.service.update_one')
|
||||||
@@ -226,7 +253,12 @@ class TestUsers:
|
|||||||
2,
|
2,
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_delete_one_notfound(self, client, mocker, mock_session, mock_user):
|
def test_delete_one_notfound(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
user_result = None
|
user_result = None
|
||||||
|
|
||||||
mock = mocker.patch.object(
|
mock = mocker.patch.object(
|
||||||
@@ -244,11 +276,16 @@ class TestUsers:
|
|||||||
2,
|
2,
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_delete_one_unauthorized(self, client, mocker, mock_session, mock_user):
|
def test_delete_one_unauthorized(
|
||||||
|
self,
|
||||||
|
client,
|
||||||
|
mocker,
|
||||||
|
mock_session,
|
||||||
|
mock_user):
|
||||||
def unauthorized():
|
def unauthorized():
|
||||||
raise HTTPException(status_code=401)
|
raise HTTPException(status_code=401)
|
||||||
user_body = user_factory.user_body_factory(name='test user delete')
|
user_body = user_factory.user_body_factory(name='test user delete')
|
||||||
|
|
||||||
app.dependency_overrides[get_current_user] = unauthorized
|
app.dependency_overrides[get_current_user] = unauthorized
|
||||||
|
|
||||||
mock = mocker.patch('src.users.service.delete_one')
|
mock = mocker.patch('src.users.service.delete_one')
|
||||||
@@ -257,4 +294,4 @@ class TestUsers:
|
|||||||
assert response.status_code == 401
|
assert response.status_code == 401
|
||||||
mock.assert_not_called()
|
mock.assert_not_called()
|
||||||
|
|
||||||
app.dependency_overrides.clear()
|
app.dependency_overrides.clear()
|
||||||
|
|||||||
@@ -6,30 +6,37 @@ import src.forms.service as forms_service
|
|||||||
import src.forms.exceptions as forms_exceptions
|
import src.forms.exceptions as forms_exceptions
|
||||||
import tests.factories.forms as forms_factory
|
import tests.factories.forms as forms_factory
|
||||||
|
|
||||||
|
|
||||||
class TestFormsService:
|
class TestFormsService:
|
||||||
def test_get_all_forms(self, session: Session, forms: list[models.FormPublic]):
|
def test_get_all_forms(self, session: Session,
|
||||||
|
forms: list[models.FormPublic]):
|
||||||
result = forms_service.get_all(session, [], [], False)
|
result = forms_service.get_all(session, [], [], False)
|
||||||
|
|
||||||
assert len(result) == 2
|
assert len(result) == 2
|
||||||
assert result == forms
|
assert result == forms
|
||||||
|
|
||||||
def test_get_all_forms_filter_productors(self, session: Session, forms: list[models.FormPublic]):
|
def test_get_all_forms_filter_productors(
|
||||||
|
self, session: Session, forms: list[models.FormPublic]):
|
||||||
result = forms_service.get_all(session, [], ['test productor'], False)
|
result = forms_service.get_all(session, [], ['test productor'], False)
|
||||||
|
|
||||||
assert len(result) == 2
|
assert len(result) == 2
|
||||||
assert result == forms
|
assert result == forms
|
||||||
|
|
||||||
def test_get_all_forms_filter_season(self, session: Session, forms: list[models.FormPublic]):
|
def test_get_all_forms_filter_season(
|
||||||
|
self, session: Session, forms: list[models.FormPublic]):
|
||||||
result = forms_service.get_all(session, ['test season 1'], [], False)
|
result = forms_service.get_all(session, ['test season 1'], [], False)
|
||||||
|
|
||||||
assert len(result) == 1
|
assert len(result) == 1
|
||||||
|
|
||||||
def test_get_all_forms_all_filters(self, session: Session, forms: list[models.FormPublic]):
|
def test_get_all_forms_all_filters(
|
||||||
result = forms_service.get_all(session, ['test season 1'], ['test productor'], True)
|
self, session: Session, forms: list[models.FormPublic]):
|
||||||
|
result = forms_service.get_all(
|
||||||
|
session, ['test season 1'], ['test productor'], True)
|
||||||
|
|
||||||
assert result == forms
|
assert result == forms
|
||||||
|
|
||||||
def test_get_one_form(self, session: Session, forms: list[models.FormPublic]):
|
def test_get_one_form(self, session: Session,
|
||||||
|
forms: list[models.FormPublic]):
|
||||||
result = forms_service.get_one(session, forms[0].id)
|
result = forms_service.get_one(session, forms[0].id)
|
||||||
|
|
||||||
assert result == forms[0]
|
assert result == forms[0]
|
||||||
@@ -37,10 +44,10 @@ class TestFormsService:
|
|||||||
def test_get_one_form_notfound(self, session: Session):
|
def test_get_one_form_notfound(self, session: Session):
|
||||||
result = forms_service.get_one(session, 122)
|
result = forms_service.get_one(session, 122)
|
||||||
|
|
||||||
assert result == None
|
assert result is None
|
||||||
|
|
||||||
def test_create_form(
|
def test_create_form(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
productor: models.ProductorPublic,
|
productor: models.ProductorPublic,
|
||||||
referer: models.ProductorPublic
|
referer: models.ProductorPublic
|
||||||
@@ -56,10 +63,10 @@ class TestFormsService:
|
|||||||
assert result.id is not None
|
assert result.id is not None
|
||||||
assert result.name == "new test form"
|
assert result.name == "new test form"
|
||||||
assert result.productor.name == "test productor"
|
assert result.productor.name == "test productor"
|
||||||
|
|
||||||
def test_create_form_invalidinput(
|
def test_create_form_invalidinput(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
productor: models.Productor
|
productor: models.Productor
|
||||||
):
|
):
|
||||||
form_create = None
|
form_create = None
|
||||||
@@ -69,17 +76,16 @@ class TestFormsService:
|
|||||||
form_create = forms_factory.form_create_factory(productor_id=123)
|
form_create = forms_factory.form_create_factory(productor_id=123)
|
||||||
with pytest.raises(forms_exceptions.ProductorNotFoundError):
|
with pytest.raises(forms_exceptions.ProductorNotFoundError):
|
||||||
result = forms_service.create_one(session, form_create)
|
result = forms_service.create_one(session, form_create)
|
||||||
|
|
||||||
form_create = forms_factory.form_create_factory(
|
form_create = forms_factory.form_create_factory(
|
||||||
productor_id=productor.id,
|
productor_id=productor.id,
|
||||||
referer_id=123
|
referer_id=123
|
||||||
)
|
)
|
||||||
with pytest.raises(forms_exceptions.UserNotFoundError):
|
with pytest.raises(forms_exceptions.UserNotFoundError):
|
||||||
result = forms_service.create_one(session, form_create)
|
result = forms_service.create_one(session, form_create)
|
||||||
|
|
||||||
|
|
||||||
def test_update_form(
|
def test_update_form(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
productor: models.ProductorPublic,
|
productor: models.ProductorPublic,
|
||||||
referer: models.ProductorPublic,
|
referer: models.ProductorPublic,
|
||||||
@@ -97,9 +103,9 @@ class TestFormsService:
|
|||||||
assert result.id == form_id
|
assert result.id == form_id
|
||||||
assert result.name == 'updated test form'
|
assert result.name == 'updated test form'
|
||||||
assert result.season == 'updated test season'
|
assert result.season == 'updated test season'
|
||||||
|
|
||||||
def test_update_form_notfound(
|
def test_update_form_notfound(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
productor: models.ProductorPublic,
|
productor: models.ProductorPublic,
|
||||||
referer: models.ProductorPublic,
|
referer: models.ProductorPublic,
|
||||||
@@ -113,42 +119,41 @@ class TestFormsService:
|
|||||||
form_id = 123
|
form_id = 123
|
||||||
with pytest.raises(forms_exceptions.FormNotFoundError):
|
with pytest.raises(forms_exceptions.FormNotFoundError):
|
||||||
result = forms_service.update_one(session, form_id, form_update)
|
result = forms_service.update_one(session, form_id, form_update)
|
||||||
|
|
||||||
def test_update_form_invalidinput(
|
def test_update_form_invalidinput(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
productor: models.ProductorPublic,
|
productor: models.ProductorPublic,
|
||||||
forms: list[models.FormPublic]
|
forms: list[models.FormPublic]
|
||||||
):
|
):
|
||||||
form_id = forms[0].id
|
form_id = forms[0].id
|
||||||
form_update = forms_factory.form_update_factory(productor_id=123)
|
form_update = forms_factory.form_update_factory(productor_id=123)
|
||||||
with pytest.raises(forms_exceptions.ProductorNotFoundError):
|
with pytest.raises(forms_exceptions.ProductorNotFoundError):
|
||||||
result = forms_service.update_one(session, form_id, form_update)
|
result = forms_service.update_one(session, form_id, form_update)
|
||||||
|
|
||||||
form_update = forms_factory.form_update_factory(
|
form_update = forms_factory.form_update_factory(
|
||||||
productor_id=productor.id,
|
productor_id=productor.id,
|
||||||
referer_id=123
|
referer_id=123
|
||||||
)
|
)
|
||||||
with pytest.raises(forms_exceptions.UserNotFoundError):
|
with pytest.raises(forms_exceptions.UserNotFoundError):
|
||||||
result = forms_service.update_one(session, form_id, form_update)
|
result = forms_service.update_one(session, form_id, form_update)
|
||||||
|
|
||||||
def test_delete_form(
|
def test_delete_form(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
forms: list[models.FormPublic]
|
forms: list[models.FormPublic]
|
||||||
):
|
):
|
||||||
form_id = forms[0].id
|
form_id = forms[0].id
|
||||||
result = forms_service.delete_one(session, form_id)
|
result = forms_service.delete_one(session, form_id)
|
||||||
|
|
||||||
check = forms_service.get_one(session, form_id)
|
check = forms_service.get_one(session, form_id)
|
||||||
assert check == None
|
assert check is None
|
||||||
|
|
||||||
def test_delete_form_notfound(
|
def test_delete_form_notfound(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
forms: list[models.FormPublic]
|
forms: list[models.FormPublic]
|
||||||
):
|
):
|
||||||
form_id = 123
|
form_id = 123
|
||||||
with pytest.raises(forms_exceptions.FormNotFoundError):
|
with pytest.raises(forms_exceptions.FormNotFoundError):
|
||||||
result = forms_service.delete_one(session, form_id)
|
result = forms_service.delete_one(session, form_id)
|
||||||
|
|
||||||
|
|||||||
@@ -6,10 +6,11 @@ import src.productors.service as productors_service
|
|||||||
import src.productors.exceptions as productors_exceptions
|
import src.productors.exceptions as productors_exceptions
|
||||||
import tests.factories.productors as productors_factory
|
import tests.factories.productors as productors_factory
|
||||||
|
|
||||||
|
|
||||||
class TestProductorsService:
|
class TestProductorsService:
|
||||||
def test_get_all_productors(
|
def test_get_all_productors(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
productors: list[models.ProductorPublic],
|
productors: list[models.ProductorPublic],
|
||||||
user: models.UserPublic
|
user: models.UserPublic
|
||||||
):
|
):
|
||||||
@@ -19,51 +20,53 @@ class TestProductorsService:
|
|||||||
assert result == [productors[0]]
|
assert result == [productors[0]]
|
||||||
|
|
||||||
def test_get_all_productors_filter_names(
|
def test_get_all_productors_filter_names(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
productors: list[models.ProductorPublic],
|
productors: list[models.ProductorPublic],
|
||||||
user: models.UserPublic
|
user: models.UserPublic
|
||||||
):
|
):
|
||||||
result = productors_service.get_all(
|
result = productors_service.get_all(
|
||||||
session,
|
session,
|
||||||
user,
|
user,
|
||||||
['test productor 1'],
|
['test productor 1'],
|
||||||
[]
|
[]
|
||||||
)
|
)
|
||||||
|
|
||||||
assert len(result) == 1
|
assert len(result) == 1
|
||||||
|
|
||||||
def test_get_all_productors_filter_types(
|
def test_get_all_productors_filter_types(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
productors: list[models.ProductorPublic],
|
productors: list[models.ProductorPublic],
|
||||||
user: models.UserPublic
|
user: models.UserPublic
|
||||||
):
|
):
|
||||||
result = productors_service.get_all(
|
result = productors_service.get_all(
|
||||||
session,
|
session,
|
||||||
user,
|
user,
|
||||||
[],
|
[],
|
||||||
['Légumineuses'],
|
['Légumineuses'],
|
||||||
)
|
)
|
||||||
|
|
||||||
assert len(result) == 1
|
assert len(result) == 1
|
||||||
|
|
||||||
def test_get_all_productors_all_filters(
|
def test_get_all_productors_all_filters(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
productors: list[models.ProductorPublic],
|
productors: list[models.ProductorPublic],
|
||||||
user: models.UserPublic
|
user: models.UserPublic
|
||||||
):
|
):
|
||||||
result = productors_service.get_all(
|
result = productors_service.get_all(
|
||||||
session,
|
session,
|
||||||
user,
|
user,
|
||||||
['test productor 1'],
|
['test productor 1'],
|
||||||
['Légumineuses'],
|
['Légumineuses'],
|
||||||
)
|
)
|
||||||
|
|
||||||
assert len(result) == 1
|
assert len(result) == 1
|
||||||
|
|
||||||
def test_get_one_productor(self, session: Session, productors: list[models.ProductorPublic]):
|
def test_get_one_productor(self,
|
||||||
|
session: Session,
|
||||||
|
productors: list[models.ProductorPublic]):
|
||||||
result = productors_service.get_one(session, productors[0].id)
|
result = productors_service.get_one(session, productors[0].id)
|
||||||
|
|
||||||
assert result == productors[0]
|
assert result == productors[0]
|
||||||
@@ -71,10 +74,10 @@ class TestProductorsService:
|
|||||||
def test_get_one_productor_notfound(self, session: Session):
|
def test_get_one_productor_notfound(self, session: Session):
|
||||||
result = productors_service.get_one(session, 122)
|
result = productors_service.get_one(session, 122)
|
||||||
|
|
||||||
assert result == None
|
assert result is None
|
||||||
|
|
||||||
def test_create_productor(
|
def test_create_productor(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
referer: models.ProductorPublic
|
referer: models.ProductorPublic
|
||||||
):
|
):
|
||||||
@@ -85,17 +88,17 @@ class TestProductorsService:
|
|||||||
|
|
||||||
assert result.id is not None
|
assert result.id is not None
|
||||||
assert result.name == "new test productor"
|
assert result.name == "new test productor"
|
||||||
|
|
||||||
def test_create_productor_invalidinput(
|
def test_create_productor_invalidinput(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
):
|
):
|
||||||
productor_create = None
|
productor_create = None
|
||||||
with pytest.raises(productors_exceptions.ProductorCreateError):
|
with pytest.raises(productors_exceptions.ProductorCreateError):
|
||||||
result = productors_service.create_one(session, productor_create)
|
result = productors_service.create_one(session, productor_create)
|
||||||
|
|
||||||
def test_update_productor(
|
def test_update_productor(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
referer: models.ProductorPublic,
|
referer: models.ProductorPublic,
|
||||||
productors: list[models.ProductorPublic]
|
productors: list[models.ProductorPublic]
|
||||||
@@ -104,13 +107,14 @@ class TestProductorsService:
|
|||||||
name='updated test productor',
|
name='updated test productor',
|
||||||
)
|
)
|
||||||
productor_id = productors[0].id
|
productor_id = productors[0].id
|
||||||
result = productors_service.update_one(session, productor_id, productor_update)
|
result = productors_service.update_one(
|
||||||
|
session, productor_id, productor_update)
|
||||||
|
|
||||||
assert result.id == productor_id
|
assert result.id == productor_id
|
||||||
assert result.name == 'updated test productor'
|
assert result.name == 'updated test productor'
|
||||||
|
|
||||||
def test_update_productor_notfound(
|
def test_update_productor_notfound(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
referer: models.ProductorPublic,
|
referer: models.ProductorPublic,
|
||||||
):
|
):
|
||||||
@@ -119,25 +123,25 @@ class TestProductorsService:
|
|||||||
)
|
)
|
||||||
productor_id = 123
|
productor_id = 123
|
||||||
with pytest.raises(productors_exceptions.ProductorNotFoundError):
|
with pytest.raises(productors_exceptions.ProductorNotFoundError):
|
||||||
result = productors_service.update_one(session, productor_id, productor_update)
|
result = productors_service.update_one(
|
||||||
|
session, productor_id, productor_update)
|
||||||
|
|
||||||
def test_delete_productor(
|
def test_delete_productor(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
productors: list[models.ProductorPublic]
|
productors: list[models.ProductorPublic]
|
||||||
):
|
):
|
||||||
productor_id = productors[0].id
|
productor_id = productors[0].id
|
||||||
result = productors_service.delete_one(session, productor_id)
|
result = productors_service.delete_one(session, productor_id)
|
||||||
|
|
||||||
check = productors_service.get_one(session, productor_id)
|
check = productors_service.get_one(session, productor_id)
|
||||||
assert check == None
|
assert check is None
|
||||||
|
|
||||||
def test_delete_productor_notfound(
|
def test_delete_productor_notfound(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
productors: list[models.ProductorPublic]
|
productors: list[models.ProductorPublic]
|
||||||
):
|
):
|
||||||
productor_id = 123
|
productor_id = 123
|
||||||
with pytest.raises(productors_exceptions.ProductorNotFoundError):
|
with pytest.raises(productors_exceptions.ProductorNotFoundError):
|
||||||
result = productors_service.delete_one(session, productor_id)
|
result = productors_service.delete_one(session, productor_id)
|
||||||
|
|
||||||
|
|||||||
@@ -6,10 +6,11 @@ import src.products.service as products_service
|
|||||||
import src.products.exceptions as products_exceptions
|
import src.products.exceptions as products_exceptions
|
||||||
import tests.factories.products as products_factory
|
import tests.factories.products as products_factory
|
||||||
|
|
||||||
|
|
||||||
class TestProductsService:
|
class TestProductsService:
|
||||||
def test_get_all_products(
|
def test_get_all_products(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
products: list[models.ProductPublic],
|
products: list[models.ProductPublic],
|
||||||
user: models.UserPublic
|
user: models.UserPublic
|
||||||
):
|
):
|
||||||
@@ -19,16 +20,16 @@ class TestProductsService:
|
|||||||
assert result == products
|
assert result == products
|
||||||
|
|
||||||
def test_get_all_products_filter_productors(
|
def test_get_all_products_filter_productors(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
products: list[models.ProductPublic],
|
products: list[models.ProductPublic],
|
||||||
user: models.UserPublic
|
user: models.UserPublic
|
||||||
):
|
):
|
||||||
result = products_service.get_all(
|
result = products_service.get_all(
|
||||||
session,
|
session,
|
||||||
user,
|
user,
|
||||||
[],
|
[],
|
||||||
['test productor'],
|
['test productor'],
|
||||||
[]
|
[]
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -36,54 +37,55 @@ class TestProductsService:
|
|||||||
assert result == products
|
assert result == products
|
||||||
|
|
||||||
def test_get_all_products_filter_names(
|
def test_get_all_products_filter_names(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
products: list[models.ProductPublic],
|
products: list[models.ProductPublic],
|
||||||
user: models.UserPublic
|
user: models.UserPublic
|
||||||
):
|
):
|
||||||
result = products_service.get_all(
|
result = products_service.get_all(
|
||||||
session,
|
session,
|
||||||
user,
|
user,
|
||||||
['product 1 occasionnal'],
|
['product 1 occasionnal'],
|
||||||
[],
|
[],
|
||||||
[]
|
[]
|
||||||
)
|
)
|
||||||
|
|
||||||
assert len(result) == 1
|
assert len(result) == 1
|
||||||
|
|
||||||
def test_get_all_products_filter_types(
|
def test_get_all_products_filter_types(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
products: list[models.ProductPublic],
|
products: list[models.ProductPublic],
|
||||||
user: models.UserPublic
|
user: models.UserPublic
|
||||||
):
|
):
|
||||||
result = products_service.get_all(
|
result = products_service.get_all(
|
||||||
session,
|
session,
|
||||||
user,
|
user,
|
||||||
[],
|
[],
|
||||||
[],
|
[],
|
||||||
['1']
|
['1']
|
||||||
)
|
)
|
||||||
|
|
||||||
assert len(result) == 1
|
assert len(result) == 1
|
||||||
|
|
||||||
def test_get_all_products_all_filters(
|
def test_get_all_products_all_filters(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
products: list[models.ProductPublic],
|
products: list[models.ProductPublic],
|
||||||
user: models.UserPublic
|
user: models.UserPublic
|
||||||
):
|
):
|
||||||
result = products_service.get_all(
|
result = products_service.get_all(
|
||||||
session,
|
session,
|
||||||
user,
|
user,
|
||||||
['product 1 occasionnal'],
|
['product 1 occasionnal'],
|
||||||
['test productor'],
|
['test productor'],
|
||||||
['1']
|
['1']
|
||||||
)
|
)
|
||||||
|
|
||||||
assert len(result) == 1
|
assert len(result) == 1
|
||||||
|
|
||||||
def test_get_one_product(self, session: Session, products: list[models.ProductPublic]):
|
def test_get_one_product(self, session: Session,
|
||||||
|
products: list[models.ProductPublic]):
|
||||||
result = products_service.get_one(session, products[0].id)
|
result = products_service.get_one(session, products[0].id)
|
||||||
|
|
||||||
assert result == products[0]
|
assert result == products[0]
|
||||||
@@ -91,10 +93,10 @@ class TestProductsService:
|
|||||||
def test_get_one_product_notfound(self, session: Session):
|
def test_get_one_product_notfound(self, session: Session):
|
||||||
result = products_service.get_one(session, 122)
|
result = products_service.get_one(session, 122)
|
||||||
|
|
||||||
assert result == None
|
assert result is None
|
||||||
|
|
||||||
def test_create_product(
|
def test_create_product(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
productor: models.ProductorPublic,
|
productor: models.ProductorPublic,
|
||||||
referer: models.ProductorPublic
|
referer: models.ProductorPublic
|
||||||
@@ -108,22 +110,23 @@ class TestProductsService:
|
|||||||
assert result.id is not None
|
assert result.id is not None
|
||||||
assert result.name == "new test product"
|
assert result.name == "new test product"
|
||||||
assert result.productor.name == "test productor"
|
assert result.productor.name == "test productor"
|
||||||
|
|
||||||
def test_create_product_invalidinput(
|
def test_create_product_invalidinput(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
productor: models.Productor
|
productor: models.Productor
|
||||||
):
|
):
|
||||||
product_create = None
|
product_create = None
|
||||||
with pytest.raises(products_exceptions.ProductCreateError):
|
with pytest.raises(products_exceptions.ProductCreateError):
|
||||||
result = products_service.create_one(session, product_create)
|
result = products_service.create_one(session, product_create)
|
||||||
|
|
||||||
product_create = products_factory.product_create_factory(productor_id=123)
|
product_create = products_factory.product_create_factory(
|
||||||
|
productor_id=123)
|
||||||
with pytest.raises(products_exceptions.ProductorNotFoundError):
|
with pytest.raises(products_exceptions.ProductorNotFoundError):
|
||||||
result = products_service.create_one(session, product_create)
|
result = products_service.create_one(session, product_create)
|
||||||
|
|
||||||
def test_update_product(
|
def test_update_product(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
productor: models.ProductorPublic,
|
productor: models.ProductorPublic,
|
||||||
referer: models.ProductorPublic,
|
referer: models.ProductorPublic,
|
||||||
@@ -134,13 +137,14 @@ class TestProductsService:
|
|||||||
productor_id=productor.id,
|
productor_id=productor.id,
|
||||||
)
|
)
|
||||||
product_id = products[0].id
|
product_id = products[0].id
|
||||||
result = products_service.update_one(session, product_id, product_update)
|
result = products_service.update_one(
|
||||||
|
session, product_id, product_update)
|
||||||
|
|
||||||
assert result.id == product_id
|
assert result.id == product_id
|
||||||
assert result.name == 'updated test product'
|
assert result.name == 'updated test product'
|
||||||
|
|
||||||
def test_update_product_notfound(
|
def test_update_product_notfound(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
productor: models.ProductorPublic,
|
productor: models.ProductorPublic,
|
||||||
referer: models.ProductorPublic,
|
referer: models.ProductorPublic,
|
||||||
@@ -151,41 +155,43 @@ class TestProductsService:
|
|||||||
)
|
)
|
||||||
product_id = 123
|
product_id = 123
|
||||||
with pytest.raises(products_exceptions.ProductNotFoundError):
|
with pytest.raises(products_exceptions.ProductNotFoundError):
|
||||||
result = products_service.update_one(session, product_id, product_update)
|
result = products_service.update_one(
|
||||||
|
session, product_id, product_update)
|
||||||
|
|
||||||
def test_update_product_invalidinput(
|
def test_update_product_invalidinput(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
productor: models.ProductorPublic,
|
productor: models.ProductorPublic,
|
||||||
products: list[models.ProductPublic]
|
products: list[models.ProductPublic]
|
||||||
):
|
):
|
||||||
product_id = products[0].id
|
product_id = products[0].id
|
||||||
product_update = products_factory.product_update_factory(productor_id=123)
|
|
||||||
with pytest.raises(products_exceptions.ProductorNotFoundError):
|
|
||||||
result = products_service.update_one(session, product_id, product_update)
|
|
||||||
|
|
||||||
product_update = products_factory.product_update_factory(
|
product_update = products_factory.product_update_factory(
|
||||||
productor_id=productor.id,
|
productor_id=123)
|
||||||
|
with pytest.raises(products_exceptions.ProductorNotFoundError):
|
||||||
|
result = products_service.update_one(
|
||||||
|
session, product_id, product_update)
|
||||||
|
|
||||||
|
product_update = products_factory.product_update_factory(
|
||||||
|
productor_id=productor.id,
|
||||||
referer_id=123
|
referer_id=123
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_delete_product(
|
def test_delete_product(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
products: list[models.ProductPublic]
|
products: list[models.ProductPublic]
|
||||||
):
|
):
|
||||||
product_id = products[0].id
|
product_id = products[0].id
|
||||||
result = products_service.delete_one(session, product_id)
|
result = products_service.delete_one(session, product_id)
|
||||||
|
|
||||||
check = products_service.get_one(session, product_id)
|
check = products_service.get_one(session, product_id)
|
||||||
assert check == None
|
assert check is None
|
||||||
|
|
||||||
def test_delete_product_notfound(
|
def test_delete_product_notfound(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
products: list[models.ProductPublic]
|
products: list[models.ProductPublic]
|
||||||
):
|
):
|
||||||
product_id = 123
|
product_id = 123
|
||||||
with pytest.raises(products_exceptions.ProductNotFoundError):
|
with pytest.raises(products_exceptions.ProductNotFoundError):
|
||||||
result = products_service.delete_one(session, product_id)
|
result = products_service.delete_one(session, product_id)
|
||||||
|
|
||||||
|
|||||||
@@ -7,10 +7,11 @@ import src.shipments.service as shipments_service
|
|||||||
import src.shipments.exceptions as shipments_exceptions
|
import src.shipments.exceptions as shipments_exceptions
|
||||||
import tests.factories.shipments as shipments_factory
|
import tests.factories.shipments as shipments_factory
|
||||||
|
|
||||||
|
|
||||||
class TestShipmentsService:
|
class TestShipmentsService:
|
||||||
def test_get_all_shipments(
|
def test_get_all_shipments(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
shipments: list[models.ShipmentPublic],
|
shipments: list[models.ShipmentPublic],
|
||||||
user: models.UserPublic,
|
user: models.UserPublic,
|
||||||
):
|
):
|
||||||
@@ -20,49 +21,54 @@ class TestShipmentsService:
|
|||||||
assert result == shipments
|
assert result == shipments
|
||||||
|
|
||||||
def test_get_all_shipments_filter_names(
|
def test_get_all_shipments_filter_names(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
shipments: list[models.ShipmentPublic],
|
shipments: list[models.ShipmentPublic],
|
||||||
user: models.UserPublic,
|
user: models.UserPublic,
|
||||||
):
|
):
|
||||||
result = shipments_service.get_all(session, user, ['test shipment 1'], [], [])
|
result = shipments_service.get_all(
|
||||||
|
session, user, ['test shipment 1'], [], [])
|
||||||
|
|
||||||
assert len(result) == 1
|
assert len(result) == 1
|
||||||
assert result == [shipments[0]]
|
assert result == [shipments[0]]
|
||||||
|
|
||||||
def test_get_all_shipments_filter_dates(
|
def test_get_all_shipments_filter_dates(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
shipments: list[models.ShipmentPublic],
|
shipments: list[models.ShipmentPublic],
|
||||||
user: models.UserPublic,
|
user: models.UserPublic,
|
||||||
):
|
):
|
||||||
result = shipments_service.get_all(session, user, [], ['2025-10-10'], [])
|
result = shipments_service.get_all(
|
||||||
|
session, user, [], ['2025-10-10'], [])
|
||||||
|
|
||||||
assert len(result) == 1
|
assert len(result) == 1
|
||||||
|
|
||||||
def test_get_all_shipments_filter_forms(
|
def test_get_all_shipments_filter_forms(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
shipments: list[models.ShipmentPublic],
|
shipments: list[models.ShipmentPublic],
|
||||||
forms: list[models.FormPublic],
|
forms: list[models.FormPublic],
|
||||||
user: models.UserPublic,
|
user: models.UserPublic,
|
||||||
):
|
):
|
||||||
result = shipments_service.get_all(session, user, [], [], [forms[0].name])
|
result = shipments_service.get_all(
|
||||||
|
session, user, [], [], [forms[0].name])
|
||||||
|
|
||||||
assert len(result) == 2
|
assert len(result) == 2
|
||||||
|
|
||||||
def test_get_all_shipments_all_filters(
|
def test_get_all_shipments_all_filters(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
shipments: list[models.ShipmentPublic],
|
shipments: list[models.ShipmentPublic],
|
||||||
forms: list[models.FormPublic],
|
forms: list[models.FormPublic],
|
||||||
user: models.UserPublic,
|
user: models.UserPublic,
|
||||||
):
|
):
|
||||||
result = shipments_service.get_all(session, user, ['test shipment 1'], ['2025-10-10'], [forms[0].name])
|
result = shipments_service.get_all(session, user, ['test shipment 1'], [
|
||||||
|
'2025-10-10'], [forms[0].name])
|
||||||
|
|
||||||
assert len(result) == 1
|
assert len(result) == 1
|
||||||
|
|
||||||
def test_get_one_shipment(self, session: Session, shipments: list[models.ShipmentPublic]):
|
def test_get_one_shipment(self, session: Session,
|
||||||
|
shipments: list[models.ShipmentPublic]):
|
||||||
result = shipments_service.get_one(session, shipments[0].id)
|
result = shipments_service.get_one(session, shipments[0].id)
|
||||||
|
|
||||||
assert result == shipments[0]
|
assert result == shipments[0]
|
||||||
@@ -70,10 +76,10 @@ class TestShipmentsService:
|
|||||||
def test_get_one_shipment_notfound(self, session: Session):
|
def test_get_one_shipment_notfound(self, session: Session):
|
||||||
result = shipments_service.get_one(session, 122)
|
result = shipments_service.get_one(session, 122)
|
||||||
|
|
||||||
assert result == None
|
assert result is None
|
||||||
|
|
||||||
def test_create_shipment(
|
def test_create_shipment(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
):
|
):
|
||||||
shipment_create = shipments_factory.shipment_create_factory(
|
shipment_create = shipments_factory.shipment_create_factory(
|
||||||
@@ -84,17 +90,17 @@ class TestShipmentsService:
|
|||||||
|
|
||||||
assert result.id is not None
|
assert result.id is not None
|
||||||
assert result.name == "new test shipment"
|
assert result.name == "new test shipment"
|
||||||
|
|
||||||
def test_create_shipment_invalidinput(
|
def test_create_shipment_invalidinput(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
):
|
):
|
||||||
shipment_create = None
|
shipment_create = None
|
||||||
with pytest.raises(shipments_exceptions.ShipmentCreateError):
|
with pytest.raises(shipments_exceptions.ShipmentCreateError):
|
||||||
result = shipments_service.create_one(session, shipment_create)
|
result = shipments_service.create_one(session, shipment_create)
|
||||||
|
|
||||||
def test_update_shipment(
|
def test_update_shipment(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
shipments: list[models.ShipmentPublic]
|
shipments: list[models.ShipmentPublic]
|
||||||
):
|
):
|
||||||
@@ -103,14 +109,15 @@ class TestShipmentsService:
|
|||||||
date='2025-12-10',
|
date='2025-12-10',
|
||||||
)
|
)
|
||||||
shipment_id = shipments[0].id
|
shipment_id = shipments[0].id
|
||||||
result = shipments_service.update_one(session, shipment_id, shipment_update)
|
result = shipments_service.update_one(
|
||||||
|
session, shipment_id, shipment_update)
|
||||||
|
|
||||||
assert result.id == shipment_id
|
assert result.id == shipment_id
|
||||||
assert result.name == 'updated shipment 1'
|
assert result.name == 'updated shipment 1'
|
||||||
assert result.date == datetime.date(2025, 12, 10)
|
assert result.date == datetime.date(2025, 12, 10)
|
||||||
|
|
||||||
def test_update_shipment_notfound(
|
def test_update_shipment_notfound(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
):
|
):
|
||||||
shipment_update = shipments_factory.shipment_update_factory(
|
shipment_update = shipments_factory.shipment_update_factory(
|
||||||
@@ -119,25 +126,25 @@ class TestShipmentsService:
|
|||||||
)
|
)
|
||||||
shipment_id = 123
|
shipment_id = 123
|
||||||
with pytest.raises(shipments_exceptions.ShipmentNotFoundError):
|
with pytest.raises(shipments_exceptions.ShipmentNotFoundError):
|
||||||
result = shipments_service.update_one(session, shipment_id, shipment_update)
|
result = shipments_service.update_one(
|
||||||
|
session, shipment_id, shipment_update)
|
||||||
|
|
||||||
def test_delete_shipment(
|
def test_delete_shipment(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
shipments: list[models.ShipmentPublic]
|
shipments: list[models.ShipmentPublic]
|
||||||
):
|
):
|
||||||
shipment_id = shipments[0].id
|
shipment_id = shipments[0].id
|
||||||
result = shipments_service.delete_one(session, shipment_id)
|
result = shipments_service.delete_one(session, shipment_id)
|
||||||
|
|
||||||
check = shipments_service.get_one(session, shipment_id)
|
check = shipments_service.get_one(session, shipment_id)
|
||||||
assert check == None
|
assert check is None
|
||||||
|
|
||||||
def test_delete_shipment_notfound(
|
def test_delete_shipment_notfound(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
shipments: list[models.ShipmentPublic]
|
shipments: list[models.ShipmentPublic]
|
||||||
):
|
):
|
||||||
shipment_id = 123
|
shipment_id = 123
|
||||||
with pytest.raises(shipments_exceptions.ShipmentNotFoundError):
|
with pytest.raises(shipments_exceptions.ShipmentNotFoundError):
|
||||||
result = shipments_service.delete_one(session, shipment_id)
|
result = shipments_service.delete_one(session, shipment_id)
|
||||||
|
|
||||||
|
|||||||
@@ -6,30 +6,37 @@ import src.users.service as users_service
|
|||||||
import src.users.exceptions as users_exceptions
|
import src.users.exceptions as users_exceptions
|
||||||
import tests.factories.users as users_factory
|
import tests.factories.users as users_factory
|
||||||
|
|
||||||
|
|
||||||
class TestUsersService:
|
class TestUsersService:
|
||||||
def test_get_all_users(self, session: Session, users: list[models.UserPublic]):
|
def test_get_all_users(self, session: Session,
|
||||||
|
users: list[models.UserPublic]):
|
||||||
result = users_service.get_all(session, [], [])
|
result = users_service.get_all(session, [], [])
|
||||||
|
|
||||||
assert len(result) == 3
|
assert len(result) == 3
|
||||||
assert result == users
|
assert result == users
|
||||||
|
|
||||||
def test_get_all_users_filter_names(self, session: Session, users: list[models.UserPublic]):
|
def test_get_all_users_filter_names(
|
||||||
|
self, session: Session, users: list[models.UserPublic]):
|
||||||
result = users_service.get_all(session, ['test user 1 (admin)'], [])
|
result = users_service.get_all(session, ['test user 1 (admin)'], [])
|
||||||
|
|
||||||
assert len(result) == 1
|
assert len(result) == 1
|
||||||
assert result == [users[0]]
|
assert result == [users[0]]
|
||||||
|
|
||||||
def test_get_all_users_filter_emails(self, session: Session, users: list[models.UserPublic]):
|
def test_get_all_users_filter_emails(
|
||||||
|
self, session: Session, users: list[models.UserPublic]):
|
||||||
result = users_service.get_all(session, [], ['test1@test.com'])
|
result = users_service.get_all(session, [], ['test1@test.com'])
|
||||||
|
|
||||||
assert len(result) == 1
|
assert len(result) == 1
|
||||||
|
|
||||||
def test_get_all_users_all_filters(self, session: Session, users: list[models.UserPublic]):
|
def test_get_all_users_all_filters(
|
||||||
result = users_service.get_all(session, ['test user 1 (admin)'], ['test1@test.com'])
|
self, session: Session, users: list[models.UserPublic]):
|
||||||
|
result = users_service.get_all(
|
||||||
|
session, ['test user 1 (admin)'], ['test1@test.com'])
|
||||||
|
|
||||||
assert len(result) == 1
|
assert len(result) == 1
|
||||||
|
|
||||||
def test_get_one_user(self, session: Session, users: list[models.UserPublic]):
|
def test_get_one_user(self, session: Session,
|
||||||
|
users: list[models.UserPublic]):
|
||||||
result = users_service.get_one(session, users[0].id)
|
result = users_service.get_one(session, users[0].id)
|
||||||
|
|
||||||
assert result == users[0]
|
assert result == users[0]
|
||||||
@@ -37,10 +44,10 @@ class TestUsersService:
|
|||||||
def test_get_one_user_notfound(self, session: Session):
|
def test_get_one_user_notfound(self, session: Session):
|
||||||
result = users_service.get_one(session, 122)
|
result = users_service.get_one(session, 122)
|
||||||
|
|
||||||
assert result == None
|
assert result is None
|
||||||
|
|
||||||
def test_create_user(
|
def test_create_user(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
):
|
):
|
||||||
user_create = users_factory.user_create_factory(
|
user_create = users_factory.user_create_factory(
|
||||||
@@ -54,17 +61,17 @@ class TestUsersService:
|
|||||||
assert result.name == "new test user"
|
assert result.name == "new test user"
|
||||||
assert result.email == "test@test.fr"
|
assert result.email == "test@test.fr"
|
||||||
assert len(result.roles) == 1
|
assert len(result.roles) == 1
|
||||||
|
|
||||||
def test_create_user_invalidinput(
|
def test_create_user_invalidinput(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
):
|
):
|
||||||
user_create = None
|
user_create = None
|
||||||
with pytest.raises(users_exceptions.UserCreateError):
|
with pytest.raises(users_exceptions.UserCreateError):
|
||||||
result = users_service.create_one(session, user_create)
|
result = users_service.create_one(session, user_create)
|
||||||
|
|
||||||
def test_update_user(
|
def test_update_user(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
users: list[models.UserPublic]
|
users: list[models.UserPublic]
|
||||||
):
|
):
|
||||||
@@ -79,9 +86,9 @@ class TestUsersService:
|
|||||||
assert result.id == user_id
|
assert result.id == user_id
|
||||||
assert result.name == 'updated test user'
|
assert result.name == 'updated test user'
|
||||||
assert result.email == 'test@testttt.fr'
|
assert result.email == 'test@testttt.fr'
|
||||||
|
|
||||||
def test_update_user_notfound(
|
def test_update_user_notfound(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
):
|
):
|
||||||
user_update = users_factory.user_update_factory(
|
user_update = users_factory.user_update_factory(
|
||||||
@@ -92,24 +99,23 @@ class TestUsersService:
|
|||||||
user_id = 123
|
user_id = 123
|
||||||
with pytest.raises(users_exceptions.UserNotFoundError):
|
with pytest.raises(users_exceptions.UserNotFoundError):
|
||||||
result = users_service.update_one(session, user_id, user_update)
|
result = users_service.update_one(session, user_id, user_update)
|
||||||
|
|
||||||
def test_delete_user(
|
def test_delete_user(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
users: list[models.UserPublic]
|
users: list[models.UserPublic]
|
||||||
):
|
):
|
||||||
user_id = users[0].id
|
user_id = users[0].id
|
||||||
result = users_service.delete_one(session, user_id)
|
result = users_service.delete_one(session, user_id)
|
||||||
|
|
||||||
check = users_service.get_one(session, user_id)
|
check = users_service.get_one(session, user_id)
|
||||||
assert check == None
|
assert check is None
|
||||||
|
|
||||||
def test_delete_user_notfound(
|
def test_delete_user_notfound(
|
||||||
self,
|
self,
|
||||||
session: Session,
|
session: Session,
|
||||||
users: list[models.UserPublic]
|
users: list[models.UserPublic]
|
||||||
):
|
):
|
||||||
user_id = 123
|
user_id = 123
|
||||||
with pytest.raises(users_exceptions.UserNotFoundError):
|
with pytest.raises(users_exceptions.UserNotFoundError):
|
||||||
result = users_service.delete_one(session, user_id)
|
result = users_service.delete_one(session, user_id)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user