fix test format

This commit is contained in:
Julien Aldon
2026-03-02 16:33:52 +01:00
parent 5dd9e19877
commit 0e48d1bbaa
20 changed files with 751 additions and 436 deletions

View File

@@ -9,6 +9,7 @@ import src.models as models
from src.database import get_session
from src.auth.auth import get_current_user
@pytest.fixture
def mock_session(mocker):
session = mocker.Mock()
@@ -20,6 +21,7 @@ def mock_session(mocker):
yield session
app.dependency_overrides.clear()
@pytest.fixture
def mock_user():
user = models.User(id=1, name='test user', email='test@user.com')
@@ -31,10 +33,12 @@ def mock_user():
yield user
app.dependency_overrides.clear()
@pytest.fixture
def client():
return TestClient(app)
@pytest.fixture(name='session')
def session_fixture():
engine = create_engine(

View File

@@ -2,9 +2,11 @@ import src.models as models
import tests.factories.contracts as contract_factory
import tests.factories.products as product_factory
def contract_product_factory(**kwargs):
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(
product_id=1,
shipment_id=1,
@@ -16,6 +18,7 @@ def contract_product_factory(**kwargs):
data.update(kwargs)
return models.ContractProduct(**data)
def contract_product_public_factory(**kwargs):
contract = contract_factory.contract_factory(id=1)
product = product_factory.product_public_factory(id=1)
@@ -31,6 +34,7 @@ def contract_product_public_factory(**kwargs):
data.update(kwargs)
return models.ContractProductPublic(**data)
def contract_product_create_factory(**kwargs):
data = dict(
product_id=1,
@@ -40,6 +44,7 @@ def contract_product_create_factory(**kwargs):
data.update(kwargs)
return models.ContractProductCreate(**data)
def contract_product_update_factory(**kwargs):
data = dict(
product_id=1,
@@ -49,6 +54,7 @@ def contract_product_update_factory(**kwargs):
data.update(kwargs)
return models.ContractProductUpdate(**data)
def contract_product_body_factory(**kwargs):
data = dict(
product_id=1,

View File

@@ -1,6 +1,7 @@
import src.models as models
from .forms import form_factory
def contract_factory(**kwargs):
data = dict(
id=1,
@@ -17,6 +18,7 @@ def contract_factory(**kwargs):
data.update(kwargs)
return models.Contract(**data)
def contract_public_factory(**kwargs):
data = dict(
id=1,
@@ -33,6 +35,7 @@ def contract_public_factory(**kwargs):
data.update(kwargs)
return models.ContractPublic(**data)
def contract_create_factory(**kwargs):
data = dict(
firstname="test",
@@ -48,6 +51,7 @@ def contract_create_factory(**kwargs):
data.update(kwargs)
return models.ContractCreate(**data)
def contract_update_factory(**kwargs):
data = dict(
firstname="test",
@@ -60,6 +64,7 @@ def contract_update_factory(**kwargs):
data.update(kwargs)
return models.ContractUpdate(**data)
def contract_body_factory(**kwargs):
data = dict(
firstname="test",

View File

@@ -1,9 +1,9 @@
import src.models as models
from .productors import productor_public_factory
from .shipments import shipment_public_factory
from .users import user_factory
import datetime
def form_factory(**kwargs):
data = dict(
id=1,
@@ -37,6 +37,7 @@ def form_body_factory(**kwargs):
data.update(kwargs)
return data
def form_create_factory(**kwargs):
data = dict(
name='form 1',
@@ -51,6 +52,7 @@ def form_create_factory(**kwargs):
data.update(kwargs)
return models.FormCreate(**data)
def form_update_factory(**kwargs):
data = dict(
name='form 1',
@@ -65,6 +67,7 @@ def form_update_factory(**kwargs):
data.update(kwargs)
return models.FormUpdate(**data)
def form_public_factory(form=None, shipments=[], **kwargs):
data = dict(
id=1,

View File

@@ -1,5 +1,6 @@
import src.models as models
def productor_factory(**kwargs):
data = dict(
id=1,
@@ -10,6 +11,7 @@ def productor_factory(**kwargs):
data.update(kwargs)
return models.Productor(**data)
def productor_public_factory(**kwargs):
data = dict(
id=1,
@@ -22,6 +24,7 @@ def productor_public_factory(**kwargs):
data.update(kwargs)
return models.ProductorPublic(**data)
def productor_create_factory(**kwargs):
data = dict(
id=1,
@@ -34,6 +37,7 @@ def productor_create_factory(**kwargs):
data.update(kwargs)
return models.ProductorCreate(**data)
def productor_update_factory(**kwargs):
data = dict(
id=1,
@@ -46,6 +50,7 @@ def productor_update_factory(**kwargs):
data.update(kwargs)
return models.ProductorUpdate(**data)
def productor_body_factory(**kwargs):
data = dict(
id=1,

View File

@@ -1,6 +1,6 @@
import src.models as models
from .productors import productor_factory
from .shipments import shipment_factory
def product_body_factory(**kwargs):
data = dict(
@@ -16,6 +16,7 @@ def product_body_factory(**kwargs):
data.update(kwargs)
return data
def product_create_factory(**kwargs):
data = dict(
name='product test 1',
@@ -30,6 +31,7 @@ def product_create_factory(**kwargs):
data.update(kwargs)
return models.ProductCreate(**data)
def product_update_factory(**kwargs):
data = dict(
name='product test 1',
@@ -44,6 +46,7 @@ def product_update_factory(**kwargs):
data.update(kwargs)
return models.ProductUpdate(**data)
def product_public_factory(productor=None, shipments=[], **kwargs):
if productor is None:
productor = productor_factory()

View File

@@ -1,6 +1,7 @@
import src.models as models
import datetime
def shipment_factory(**kwargs):
data = dict(
id=1,
@@ -11,6 +12,7 @@ def shipment_factory(**kwargs):
data.update(kwargs)
return models.Shipment(**data)
def shipment_public_factory(**kwargs):
data = dict(
id=1,
@@ -23,6 +25,7 @@ def shipment_public_factory(**kwargs):
data.update(kwargs)
return models.ShipmentPublic(**data)
def shipment_create_factory(**kwargs):
data = dict(
name="test shipment",
@@ -33,6 +36,7 @@ def shipment_create_factory(**kwargs):
data.update(kwargs)
return models.ShipmentCreate(**data)
def shipment_update_factory(**kwargs):
data = dict(
name="test shipment",
@@ -43,6 +47,7 @@ def shipment_update_factory(**kwargs):
data.update(kwargs)
return models.ShipmentUpdate(**data)
def shipment_body_factory(**kwargs):
data = dict(
name="test shipment",

View File

@@ -1,5 +1,6 @@
import src.models as models
def user_factory(**kwargs):
data = dict(
id=1,
@@ -10,6 +11,7 @@ def user_factory(**kwargs):
data.update(kwargs)
return models.User(**data)
def user_public_factory(**kwargs):
data = dict(
id=1,
@@ -20,6 +22,7 @@ def user_public_factory(**kwargs):
data.update(kwargs)
return models.UserPublic(**data)
def user_create_factory(**kwargs):
data = dict(
name="test user",
@@ -29,6 +32,7 @@ def user_create_factory(**kwargs):
data.update(kwargs)
return models.UserCreate(**data)
def user_update_factory(**kwargs):
data = dict(
name="test user",
@@ -38,6 +42,7 @@ def user_update_factory(**kwargs):
data.update(kwargs)
return models.UserUpdate(**data)
def user_body_factory(**kwargs):
data = dict(
name="test user",

View File

@@ -14,6 +14,7 @@ import tests.factories.productors as productors_factory
import tests.factories.products as products_factory
import tests.factories.users as users_factory
@pytest.fixture
def productor(session: Session) -> models.ProductorPublic:
productor = productors_service.create_one(
@@ -46,8 +47,10 @@ def productors(session: Session) -> models.ProductorPublic:
]
return productors
@pytest.fixture
def products(session: Session, productor: models.ProductorPublic) -> list[models.ProductPublic]:
def products(session: Session,
productor: models.ProductorPublic) -> list[models.ProductPublic]:
products = [
products_service.create_one(
session,
@@ -68,6 +71,7 @@ def products(session: Session, productor: models.ProductorPublic) -> list[models
]
return products
@pytest.fixture
def user(session: Session) -> models.UserPublic:
user = users_service.create_one(
@@ -80,6 +84,7 @@ def user(session: Session) -> models.UserPublic:
)
return user
@pytest.fixture
def users(session: Session) -> list[models.UserPublic]:
users = [
@@ -88,28 +93,28 @@ def users(session: Session) -> list[models.UserPublic]:
users_factory.user_create_factory(
name='test user 1 (admin)',
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(
session,
users_factory.user_create_factory(
name='test user 2',
email='test2@test.com',
role_names=['Légumineuses']
)
),
role_names=['Légumineuses'])),
users_service.create_one(
session,
users_factory.user_create_factory(
name='test user 3',
email='test3@test.com',
role_names=['Porc-Agneau']
)
)
]
role_names=['Porc-Agneau']))]
return users
@pytest.fixture
def referer(session: Session) -> models.UserPublic:
referer = users_service.create_one(
@@ -122,8 +127,11 @@ def referer(session: Session) -> models.UserPublic:
)
return referer
@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_service.create_one(
session,
@@ -146,6 +154,7 @@ def shipments(session: Session, forms: list[models.FormPublic], products: list[m
]
return shipments
@pytest.fixture
def forms(
session: Session,
@@ -173,4 +182,3 @@ def forms(
)
]
return forms

View File

@@ -8,6 +8,7 @@ import tests.factories.contract_products as contract_products_factory
from fastapi.exceptions import HTTPException
class TestContracts:
def test_get_all(self, client, mocker, mock_session, mock_user):
mock_results = [
@@ -31,6 +32,7 @@ class TestContracts:
mock_user,
[],
)
def test_get_all_filters(self, client, mocker, mock_session, mock_user):
mock_results = [
contract_factory.contract_public_factory(id=2),
@@ -52,7 +54,12 @@ class TestContracts:
['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():
raise HTTPException(status_code=401)
@@ -74,7 +81,7 @@ class TestContracts:
'get_one',
return_value=mock_result
)
mock_is_allowed = mocker.patch.object(
mocker.patch.object(
service,
'is_allowed',
return_value=True
@@ -97,20 +104,24 @@ class TestContracts:
return_value=mock_result
)
mock_is_allowed = mocker.patch.object(
mocker.patch.object(
service,
'is_allowed',
return_value=True
)
response = client.get('/api/contracts/2')
response_data = response.json()
assert response.status_code == 404
mock.assert_called_once_with(
mock_session,
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():
raise HTTPException(status_code=401)
@@ -127,37 +138,53 @@ class TestContracts:
def test_create_one(self, client, mocker, mock_session, mock_user):
contract_body = contract_factory.contract_body_factory(
products=[
contract_products_factory.contract_product_body_factory(product_id=1),
contract_products_factory.contract_product_body_factory(product_id=2),
contract_products_factory.contract_product_body_factory(product_id=3)
contract_products_factory.contract_product_body_factory(
product_id=1
),
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'}]
)
contract_result = contract_factory.contract_factory(
products=[
contract_products_factory.contract_product_factory(product_id=1),
contract_products_factory.contract_product_factory(product_id=2),
contract_products_factory.contract_product_factory(product_id=3)
contract_products_factory.contract_product_factory(
product_id=1
),
contract_products_factory.contract_product_factory(
product_id=2
),
contract_products_factory.contract_product_factory(
product_id=3
)
],
form=form_factory.form_factory(),
cheques=[models.Cheque(name='123123', value='100')]
)
mock_create_one = mocker.patch.object(
mocker.patch.object(
service,
'create_one',
return_value=contract_result
)
mock_add_contract_file = mocker.patch.object(
mocker.patch.object(
service,
'add_contract_file',
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)
assert response.status_code == 200
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):
contract_result = contract_factory.contract_public_factory()
@@ -168,14 +195,13 @@ class TestContracts:
return_value=contract_result
)
mock_is_allowed = mocker.patch.object(
mocker.patch.object(
service,
'is_allowed',
return_value=True
)
response = client.delete('/api/contracts/2')
response_data = response.json()
assert response.status_code == 200
mock.assert_called_once_with(
@@ -183,7 +209,12 @@ class TestContracts:
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
mock = mocker.patch.object(
@@ -192,14 +223,13 @@ class TestContracts:
return_value=contract_result
)
mock_is_allowed = mocker.patch.object(
mocker.patch.object(
service,
'is_allowed',
return_value=True
)
response = client.delete('/api/contracts/2')
response_data = response.json()
assert response.status_code == 404
mock.assert_called_once_with(
@@ -207,10 +237,14 @@ class TestContracts:
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():
raise HTTPException(status_code=401)
contract_body = contract_factory.contract_body_factory()
app.dependency_overrides[get_current_user] = unauthorized

View File

@@ -7,6 +7,7 @@ import tests.factories.forms as form_factory
from fastapi.exceptions import HTTPException
import src.messages as messages
class TestForms:
def test_get_all(self, client, mocker, mock_session, mock_user):
mock_results = [
@@ -32,6 +33,7 @@ class TestForms:
False,
mock_user,
)
def test_get_all_filters(self, client, mocker, mock_session, mock_user):
mock_results = [
form_factory.form_public_factory(name="test 2", id=2),
@@ -42,7 +44,8 @@ class TestForms:
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()
assert response.status_code == 200
assert response_data[0]['id'] == 2
@@ -55,7 +58,12 @@ class TestForms:
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():
raise HTTPException(status_code=401)
@@ -103,7 +111,6 @@ class TestForms:
2
)
def test_create_one(self, client, mocker, mock_session, mock_user):
form_body = form_factory.form_body_factory(name='test form create')
form_create = form_factory.form_create_factory(name='test form create')
@@ -125,15 +132,16 @@ class TestForms:
form_create
)
def test_create_one_referer_notfound(self, client, mocker, mock_session, mock_user):
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)
def test_create_one_referer_notfound(
self, client, mocker, mock_session, mock_user):
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(
service,
'create_one',
side_effect=forms_exceptions.UserNotFoundError(messages.Messages.not_found('referer'))
)
service, 'create_one', side_effect=forms_exceptions.UserNotFoundError(
messages.Messages.not_found('referer')))
response = client.post('/api/forms', json=form_body)
response_data = response.json()
@@ -144,15 +152,16 @@ class TestForms:
form_create
)
def test_create_one_productor_notfound(self, client, mocker, mock_session, mock_user):
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)
def test_create_one_productor_notfound(
self, client, mocker, mock_session, mock_user):
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(
service,
'create_one',
side_effect=forms_exceptions.ProductorNotFoundError(messages.Messages.not_found('productor'))
)
service, 'create_one', side_effect=forms_exceptions.ProductorNotFoundError(
messages.Messages.not_found('productor')))
response = client.post('/api/forms', json=form_body)
response_data = response.json()
@@ -163,7 +172,12 @@ class TestForms:
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():
raise HTTPException(status_code=401)
form_body = form_factory.form_body_factory(name='test form create')
@@ -200,15 +214,18 @@ class TestForms:
form_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):
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.FormNotFoundError(messages.Messages.not_found('form'))
)
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()
@@ -220,15 +237,14 @@ class TestForms:
form_update
)
def test_update_one_referer_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_update = form_factory.form_update_factory(name='test form update')
mock = mocker.patch.object(
service,
'update_one',
side_effect=forms_exceptions.UserNotFoundError(messages.Messages.not_found('referer'))
)
service, 'update_one', side_effect=forms_exceptions.UserNotFoundError(
messages.Messages.not_found('referer')))
response = client.put('/api/forms/2', json=form_body)
response_data = response.json()
@@ -240,15 +256,14 @@ class TestForms:
form_update
)
def test_update_one_productor_notfound(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'))
)
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()
@@ -260,7 +275,12 @@ class TestForms:
form_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():
raise HTTPException(status_code=401)
form_body = form_factory.form_body_factory(name='test form update')
@@ -294,14 +314,17 @@ class TestForms:
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
mock = mocker.patch.object(
service,
'delete_one',
side_effect=forms_exceptions.FormNotFoundError(messages.Messages.not_found('form'))
)
service, 'delete_one', side_effect=forms_exceptions.FormNotFoundError(
messages.Messages.not_found('form')))
response = client.delete('/api/forms/2')
response_data = response.json()
@@ -312,7 +335,12 @@ class TestForms:
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():
raise HTTPException(status_code=401)

View File

@@ -10,6 +10,7 @@ import src.productors.exceptions as exceptions
import tests.factories.productors as productor_factory
class TestProductors:
def test_get_all(self, client, mocker, mock_session, mock_user):
mock_results = [
@@ -34,6 +35,7 @@ class TestProductors:
[],
[],
)
def test_get_all_filters(self, client, mocker, mock_session, mock_user):
mock_results = [
productor_factory.productor_public_factory(name="test 2", id=2),
@@ -44,7 +46,8 @@ class TestProductors:
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()
assert response.status_code == 200
assert response_data[0]['id'] == 2
@@ -56,7 +59,12 @@ class TestProductors:
['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():
raise HTTPException(status_code=401)
@@ -71,7 +79,8 @@ class TestProductors:
app.dependency_overrides.clear()
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(
service,
@@ -104,7 +113,12 @@ class TestProductors:
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():
raise HTTPException(status_code=401)
@@ -119,9 +133,12 @@ class TestProductors:
app.dependency_overrides.clear()
def test_create_one(self, client, mocker, mock_session, mock_user):
productor_body = productor_factory.productor_body_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')
productor_body = productor_factory.productor_body_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(
service,
@@ -139,10 +156,16 @@ class TestProductors:
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():
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
@@ -155,9 +178,12 @@ class TestProductors:
app.dependency_overrides.clear()
def test_update_one(self, 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 = productor_factory.productor_public_factory(name='test productor update')
productor_body = productor_factory.productor_body_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(
service,
@@ -176,16 +202,21 @@ class TestProductors:
productor_update
)
def test_update_one_notfound(self, 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')
def test_update_one_notfound(
self,
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
mock = mocker.patch.object(
service,
'update_one',
side_effect=exceptions.ProductorNotFoundError(messages.Messages.not_found('productor'))
)
service, 'update_one', side_effect=exceptions.ProductorNotFoundError(
messages.Messages.not_found('productor')))
response = client.put('/api/productors/2', json=productor_body)
response_data = response.json()
@@ -197,10 +228,16 @@ class TestProductors:
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():
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
@@ -213,7 +250,8 @@ class TestProductors:
app.dependency_overrides.clear()
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(
service,
@@ -231,14 +269,17 @@ class TestProductors:
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
mock = mocker.patch.object(
service,
'delete_one',
side_effect=exceptions.ProductorNotFoundError(messages.Messages.not_found('productor'))
)
service, 'delete_one', side_effect=exceptions.ProductorNotFoundError(
messages.Messages.not_found('productor')))
response = client.delete('/api/productors/2')
response_data = response.json()
@@ -249,10 +290,16 @@ class TestProductors:
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():
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

View File

@@ -7,6 +7,7 @@ import tests.factories.products as product_factory
from fastapi.exceptions import HTTPException
class TestProducts:
def test_get_all(self, client, mocker, mock_session, mock_user):
mock_results = [
@@ -32,6 +33,7 @@ class TestProducts:
[],
[]
)
def test_get_all_filters(self, client, mocker, mock_session, mock_user):
mock_results = [
product_factory.product_public_factory(name="test 2", id=2),
@@ -55,7 +57,12 @@ class TestProducts:
['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():
raise HTTPException(status_code=401)
@@ -70,7 +77,8 @@ class TestProducts:
app.dependency_overrides.clear()
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(
service,
@@ -103,7 +111,12 @@ class TestProducts:
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():
raise HTTPException(status_code=401)
@@ -118,9 +131,12 @@ class TestProducts:
app.dependency_overrides.clear()
def test_create_one(self, client, mocker, mock_session, mock_user):
product_body = product_factory.product_body_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')
product_body = product_factory.product_body_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(
service,
@@ -138,10 +154,16 @@ class TestProducts:
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():
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
@@ -154,9 +176,12 @@ class TestProducts:
app.dependency_overrides.clear()
def test_update_one(self, 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 = product_factory.product_public_factory(name='test product update')
product_body = product_factory.product_body_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(
service,
@@ -175,9 +200,16 @@ class TestProducts:
product_update
)
def test_update_one_notfound(self, 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')
def test_update_one_notfound(
self,
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
mock = mocker.patch.object(
@@ -196,10 +228,16 @@ class TestProducts:
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():
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
@@ -212,7 +250,8 @@ class TestProducts:
app.dependency_overrides.clear()
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(
service,
@@ -230,7 +269,12 @@ class TestProducts:
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
mock = mocker.patch.object(
@@ -248,10 +292,16 @@ class TestProducts:
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():
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

View File

@@ -8,6 +8,7 @@ import tests.factories.shipments as shipment_factory
from fastapi.exceptions import HTTPException
class TestShipments:
def test_get_all(self, client, mocker, mock_session, mock_user):
mock_results = [
@@ -33,6 +34,7 @@ class TestShipments:
[],
[],
)
def test_get_all_filters(self, client, mocker, mock_session, mock_user):
mock_results = [
shipment_factory.shipment_public_factory(name="test 2", id=2),
@@ -43,7 +45,8 @@ class TestShipments:
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()
assert response.status_code == 200
assert response_data[0]['id'] == 2
@@ -56,7 +59,12 @@ class TestShipments:
['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():
raise HTTPException(status_code=401)
@@ -71,7 +79,8 @@ class TestShipments:
app.dependency_overrides.clear()
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(
service,
@@ -104,7 +113,12 @@ class TestShipments:
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():
raise HTTPException(status_code=401)
@@ -119,9 +133,12 @@ class TestShipments:
app.dependency_overrides.clear()
def test_create_one(self, client, mocker, mock_session, mock_user):
shipment_body = shipment_factory.shipment_body_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')
shipment_body = shipment_factory.shipment_body_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(
service,
@@ -139,10 +156,16 @@ class TestShipments:
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():
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
@@ -155,9 +178,12 @@ class TestShipments:
app.dependency_overrides.clear()
def test_update_one(self, 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')
shipment_result = shipment_factory.shipment_public_factory(name='test shipment update')
shipment_body = shipment_factory.shipment_body_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(
service,
@@ -176,15 +202,20 @@ class TestShipments:
shipment_update
)
def test_update_one_notfound(self, 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')
def test_update_one_notfound(
self,
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(
service,
'update_one',
side_effect=exceptions.ShipmentNotFoundError(messages.Messages.not_found('shipment'))
)
service, 'update_one', side_effect=exceptions.ShipmentNotFoundError(
messages.Messages.not_found('shipment')))
response = client.put('/api/shipments/2', json=shipment_body)
response_data = response.json()
@@ -196,10 +227,16 @@ class TestShipments:
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():
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
@@ -212,7 +249,8 @@ class TestShipments:
app.dependency_overrides.clear()
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(
service,
@@ -230,14 +268,17 @@ class TestShipments:
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
mock = mocker.patch.object(
service,
'delete_one',
side_effect=exceptions.ShipmentNotFoundError(messages.Messages.not_found('shipment'))
)
service, 'delete_one', side_effect=exceptions.ShipmentNotFoundError(
messages.Messages.not_found('shipment')))
response = client.delete('/api/shipments/2')
response_data = response.json()
@@ -248,10 +289,16 @@ class TestShipments:
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():
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

View File

@@ -7,6 +7,7 @@ import src.users.exceptions as exceptions
from fastapi.exceptions import HTTPException
class TestUsers:
def test_get_all(self, client, mocker, mock_session, mock_user):
mock_results = [
@@ -30,6 +31,7 @@ class TestUsers:
[],
[],
)
def test_get_all_filters(self, client, mocker, mock_session, mock_user):
mock_results = [
user_factory.user_public_factory(name="test 2", id=2),
@@ -51,7 +53,12 @@ class TestUsers:
['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():
raise HTTPException(status_code=401)
@@ -99,7 +106,12 @@ class TestUsers:
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():
raise HTTPException(status_code=401)
@@ -134,7 +146,12 @@ class TestUsers:
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():
raise HTTPException(status_code=401)
user_body = user_factory.user_body_factory(name='test user create')
@@ -171,7 +188,12 @@ class TestUsers:
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_update = user_factory.user_update_factory(name='test user update')
user_result = None
@@ -192,7 +214,12 @@ class TestUsers:
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():
raise HTTPException(status_code=401)
user_body = user_factory.user_body_factory(name='test user update')
@@ -226,7 +253,12 @@ class TestUsers:
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
mock = mocker.patch.object(
@@ -244,7 +276,12 @@ class TestUsers:
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():
raise HTTPException(status_code=401)
user_body = user_factory.user_body_factory(name='test user delete')

View File

@@ -6,30 +6,37 @@ import src.forms.service as forms_service
import src.forms.exceptions as forms_exceptions
import tests.factories.forms as forms_factory
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)
assert len(result) == 2
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)
assert len(result) == 2
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)
assert len(result) == 1
def test_get_all_forms_all_filters(self, session: Session, forms: list[models.FormPublic]):
result = forms_service.get_all(session, ['test season 1'], ['test productor'], True)
def test_get_all_forms_all_filters(
self, session: Session, forms: list[models.FormPublic]):
result = forms_service.get_all(
session, ['test season 1'], ['test productor'], True)
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)
assert result == forms[0]
@@ -37,7 +44,7 @@ class TestFormsService:
def test_get_one_form_notfound(self, session: Session):
result = forms_service.get_one(session, 122)
assert result == None
assert result is None
def test_create_form(
self,
@@ -77,7 +84,6 @@ class TestFormsService:
with pytest.raises(forms_exceptions.UserNotFoundError):
result = forms_service.create_one(session, form_create)
def test_update_form(
self,
session: Session,
@@ -141,7 +147,7 @@ class TestFormsService:
result = forms_service.delete_one(session, form_id)
check = forms_service.get_one(session, form_id)
assert check == None
assert check is None
def test_delete_form_notfound(
self,
@@ -151,4 +157,3 @@ class TestFormsService:
form_id = 123
with pytest.raises(forms_exceptions.FormNotFoundError):
result = forms_service.delete_one(session, form_id)

View File

@@ -6,6 +6,7 @@ import src.productors.service as productors_service
import src.productors.exceptions as productors_exceptions
import tests.factories.productors as productors_factory
class TestProductorsService:
def test_get_all_productors(
self,
@@ -63,7 +64,9 @@ class TestProductorsService:
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)
assert result == productors[0]
@@ -71,7 +74,7 @@ class TestProductorsService:
def test_get_one_productor_notfound(self, session: Session):
result = productors_service.get_one(session, 122)
assert result == None
assert result is None
def test_create_productor(
self,
@@ -104,7 +107,8 @@ class TestProductorsService:
name='updated test productor',
)
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.name == 'updated test productor'
@@ -119,7 +123,8 @@ class TestProductorsService:
)
productor_id = 123
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(
self,
@@ -130,7 +135,7 @@ class TestProductorsService:
result = productors_service.delete_one(session, productor_id)
check = productors_service.get_one(session, productor_id)
assert check == None
assert check is None
def test_delete_productor_notfound(
self,
@@ -140,4 +145,3 @@ class TestProductorsService:
productor_id = 123
with pytest.raises(productors_exceptions.ProductorNotFoundError):
result = productors_service.delete_one(session, productor_id)

View File

@@ -6,6 +6,7 @@ import src.products.service as products_service
import src.products.exceptions as products_exceptions
import tests.factories.products as products_factory
class TestProductsService:
def test_get_all_products(
self,
@@ -83,7 +84,8 @@ class TestProductsService:
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)
assert result == products[0]
@@ -91,7 +93,7 @@ class TestProductsService:
def test_get_one_product_notfound(self, session: Session):
result = products_service.get_one(session, 122)
assert result == None
assert result is None
def test_create_product(
self,
@@ -118,7 +120,8 @@ class TestProductsService:
with pytest.raises(products_exceptions.ProductCreateError):
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):
result = products_service.create_one(session, product_create)
@@ -134,7 +137,8 @@ class TestProductsService:
productor_id=productor.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.name == 'updated test product'
@@ -151,7 +155,8 @@ class TestProductsService:
)
product_id = 123
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(
self,
@@ -160,9 +165,11 @@ class TestProductsService:
products: list[models.ProductPublic]
):
product_id = products[0].id
product_update = products_factory.product_update_factory(productor_id=123)
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)
result = products_service.update_one(
session, product_id, product_update)
product_update = products_factory.product_update_factory(
productor_id=productor.id,
@@ -178,7 +185,7 @@ class TestProductsService:
result = products_service.delete_one(session, product_id)
check = products_service.get_one(session, product_id)
assert check == None
assert check is None
def test_delete_product_notfound(
self,
@@ -188,4 +195,3 @@ class TestProductsService:
product_id = 123
with pytest.raises(products_exceptions.ProductNotFoundError):
result = products_service.delete_one(session, product_id)

View File

@@ -7,6 +7,7 @@ import src.shipments.service as shipments_service
import src.shipments.exceptions as shipments_exceptions
import tests.factories.shipments as shipments_factory
class TestShipmentsService:
def test_get_all_shipments(
self,
@@ -25,7 +26,8 @@ class TestShipmentsService:
shipments: list[models.ShipmentPublic],
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 result == [shipments[0]]
@@ -36,7 +38,8 @@ class TestShipmentsService:
shipments: list[models.ShipmentPublic],
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
@@ -47,7 +50,8 @@ class TestShipmentsService:
forms: list[models.FormPublic],
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
@@ -58,11 +62,13 @@ class TestShipmentsService:
forms: list[models.FormPublic],
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
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)
assert result == shipments[0]
@@ -70,7 +76,7 @@ class TestShipmentsService:
def test_get_one_shipment_notfound(self, session: Session):
result = shipments_service.get_one(session, 122)
assert result == None
assert result is None
def test_create_shipment(
self,
@@ -103,7 +109,8 @@ class TestShipmentsService:
date='2025-12-10',
)
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.name == 'updated shipment 1'
@@ -119,7 +126,8 @@ class TestShipmentsService:
)
shipment_id = 123
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(
self,
@@ -130,7 +138,7 @@ class TestShipmentsService:
result = shipments_service.delete_one(session, shipment_id)
check = shipments_service.get_one(session, shipment_id)
assert check == None
assert check is None
def test_delete_shipment_notfound(
self,
@@ -140,4 +148,3 @@ class TestShipmentsService:
shipment_id = 123
with pytest.raises(shipments_exceptions.ShipmentNotFoundError):
result = shipments_service.delete_one(session, shipment_id)

View File

@@ -6,30 +6,37 @@ import src.users.service as users_service
import src.users.exceptions as users_exceptions
import tests.factories.users as users_factory
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, [], [])
assert len(result) == 3
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)'], [])
assert len(result) == 1
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'])
assert len(result) == 1
def test_get_all_users_all_filters(self, session: Session, users: list[models.UserPublic]):
result = users_service.get_all(session, ['test user 1 (admin)'], ['test1@test.com'])
def test_get_all_users_all_filters(
self, session: Session, users: list[models.UserPublic]):
result = users_service.get_all(
session, ['test user 1 (admin)'], ['test1@test.com'])
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)
assert result == users[0]
@@ -37,7 +44,7 @@ class TestUsersService:
def test_get_one_user_notfound(self, session: Session):
result = users_service.get_one(session, 122)
assert result == None
assert result is None
def test_create_user(
self,
@@ -102,7 +109,7 @@ class TestUsersService:
result = users_service.delete_one(session, user_id)
check = users_service.get_one(session, user_id)
assert check == None
assert check is None
def test_delete_user_notfound(
self,
@@ -112,4 +119,3 @@ class TestUsersService:
user_id = 123
with pytest.raises(users_exceptions.UserNotFoundError):
result = users_service.delete_one(session, user_id)