Coverage for polar/pledge/hooks.py: 100%

17 statements  

« prev     ^ index     » next       coverage.py v7.10.6, created at 2025-12-05 16:17 +0000

1from dataclasses import dataclass 1a

2 

3from polar.kit.hook import Hook 1a

4from polar.models.pledge import Pledge 1a

5from polar.models.pledge_transaction import PledgeTransaction 1a

6from polar.postgres import AsyncSession 1a

7 

8 

9@dataclass 1a

10class PledgeHook: 1a

11 session: AsyncSession 1a

12 pledge: Pledge 1a

13 

14 

15@dataclass 1a

16class PledgePaidHook: 1a

17 session: AsyncSession 1a

18 pledge: Pledge 1a

19 transaction: PledgeTransaction 1a

20 

21 

22# pledge_created fires when the pledge state is set to created 

23# (not the same as created in the initiated state) 

24pledge_created: Hook[PledgeHook] = Hook() 1a

25pledge_disputed: Hook[PledgeHook] = Hook() 1a

26pledge_updated: Hook[PledgeHook] = Hook() 1a