File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -519,6 +519,15 @@ class UserUpdateRequest(BaseRequest):
519519 monthly_movements_type : Optional [MonthlyMovementsType ] = None
520520 monthly_spending_type : Optional [MonthlySpendingType ] = None
521521 income_type : Optional [IncomeType ] = None
522+ phone_number : Optional [PhoneNumber ] = None
523+ email_address : Optional [EmailStr ] = None
524+
525+ @model_validator (mode = "before" )
526+ @classmethod
527+ def check_at_least_one_param (cls , values : DictStrAny ) -> DictStrAny :
528+ if not values :
529+ raise ValueError ('At least one parameter must be provided' )
530+ return values
522531
523532 @field_validator ('beneficiaries' )
524533 @classmethod
Original file line number Diff line number Diff line change 1- __version__ = '2.1.19 '
1+ __version__ = '2.1.20 '
Original file line number Diff line number Diff line change 11import pytest
22from pydantic import ValidationError
33
4- from cuenca_validations .types .requests import UserTOSAgreementRequest
4+ from cuenca_validations .types .requests import (
5+ UserTOSAgreementRequest ,
6+ UserUpdateRequest ,
7+ )
58from cuenca_validations .typing import DictStrAny
69
710
@@ -29,3 +32,15 @@ def test_file_cuenca_url_invalid() -> None:
2932 )
3033 with pytest .raises (ValidationError ):
3134 UserTOSAgreementRequest (** request_data )
35+
36+
37+ def test_update_user_requires_at_least_one_param ():
38+ with pytest .raises (ValueError ) as ex :
39+ UserUpdateRequest ()
40+ assert 'At least one parameter must be provided' in str (ex .value )
41+
42+
43+ def test_extra_params_are_not_allowed ():
44+ with pytest .raises (ValueError ) as ex :
45+ UserUpdateRequest (foo = 'bar' )
46+ assert 'Extra inputs are not permitted' in str (ex .value )
You can’t perform that action at this time.
0 commit comments