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, name="form 1", productor_id=1, referer_id=1, season="hiver-2026", start=datetime.date(2025, 10, 10), end=datetime.date(2025, 10, 10), minimum_shipment_value=0, visible=True, referer=user_factory(), shipments=[], productor=productor_public_factory(), ) data.update(kwargs) return models.Form(**data) def form_body_factory(**kwargs): data = dict( name="form 1", productor_id=1, referer_id=1, season="hiver-2026", start="2025-10-10", end="2025-10-10", minimum_shipment_value=0, visible=True ) data.update(kwargs) return data def form_create_factory(**kwargs): data = dict( name="form 1", productor_id=1, referer_id=1, season="hiver-2026", start=datetime.date(2025, 10, 10), end=datetime.date(2025, 10, 10), minimum_shipment_value=0, visible=True ) data.update(kwargs) return models.FormCreate(**data) def form_update_factory(**kwargs): data = dict( name="form 1", productor_id=1, referer_id=1, season="hiver-2026", start=datetime.date(2025, 10, 10), end=datetime.date(2025, 10, 10), minimum_shipment_value=0, visible=True ) data.update(kwargs) return models.FormUpdate(**data) def form_public_factory(form=None, shipments=[],**kwargs): data = dict( id=1, name="form 1", productor_id=1, referer_id=1, season="hiver-2026", start=datetime.date(2025, 10, 10), end=datetime.date(2025, 10, 10), minimum_shipment_value=0, visible=True, referer=user_factory(), shipments=[], productor=productor_public_factory(), ) data.update(kwargs) return models.FormPublic(**data)