Coverage for packages/azericard/src/integrify/azericard/handler.py: 100%

23 statements  

« prev     ^ index     » next       coverage.py v7.16.0, created at 2026-10-19 02:39 +0000

1from integrify.api import APIPayloadHandler 

2from integrify.azericard.schemas.request import ( 

3 AuthAndSaveCardRequestSchema, 

4 AuthConfirmRequestSchema, 

5 AuthRequestSchema, 

6 AuthWithSavedCardRequestSchema, 

7 GetTransactionStatusRequestSchema, 

8 TransferConfirmDeclineRequestSchema, 

9 TransferStartRequestSchema, 

10) 

11from integrify.azericard.schemas.response import ( 

12 GetTransactionStatusResponseSchema, 

13 TransferConfirmResponseSchema, 

14 TransferDeclineResponseSchema, 

15) 

16 

17# =============================================================================================== # 

18# AUTH HANDLERS # 

19# =============================================================================================== # 

20 

21 

22class BaseAzericardPayloadHandler(APIPayloadHandler): 

23 """AzeriCard form-post endpoint-ləri üçün baza handler. 

24 

25 Bu endpoint-lər üçün `dry=True` (sorğu göndərilmir, HTML form üçün data qaytarılır). 

26 `req_model` alt class-larda ClassVar kimi təyin olunur. 

27 """ 

28 

29 dry = True 

30 

31 

32class AuthPayloadHandler(BaseAzericardPayloadHandler): 

33 req_model = AuthRequestSchema 

34 

35 

36class AuthConfirmPayloadHandler(BaseAzericardPayloadHandler): 

37 req_model = AuthConfirmRequestSchema 

38 

39 

40class AuthAndSavePayloadHandler(BaseAzericardPayloadHandler): 

41 req_model = AuthAndSaveCardRequestSchema 

42 

43 

44class AuthWithSavedCardPayloadHandler(BaseAzericardPayloadHandler): 

45 req_model = AuthWithSavedCardRequestSchema 

46 

47 

48class GetTransactionStatusPayloadHandler(APIPayloadHandler): 

49 req_model = GetTransactionStatusRequestSchema 

50 resp_model = GetTransactionStatusResponseSchema 

51 

52 

53# =============================================================================================== # 

54# TRANSFER HANDLERS # 

55# =============================================================================================== # 

56class TransferStartPayloadHandler(BaseAzericardPayloadHandler): 

57 req_model = TransferStartRequestSchema 

58 

59 

60class TransferConfirmPayloadHandler(APIPayloadHandler): 

61 req_model = TransferConfirmDeclineRequestSchema 

62 resp_model = TransferConfirmResponseSchema 

63 

64 

65class TransferDeclinePayloadHandler(APIPayloadHandler): 

66 req_model = TransferConfirmDeclineRequestSchema 

67 resp_model = TransferDeclineResponseSchema # pragma: no cover