Coverage for polar/checkout/auth.py: 100%

12 statements  

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

1from typing import Annotated 1a

2 

3from fastapi import Depends 1a

4 

5from polar.auth.dependencies import Authenticator 1a

6from polar.auth.models import Anonymous, AuthSubject, User 1a

7from polar.auth.scope import Scope 1a

8from polar.models.organization import Organization 1a

9 

10_CheckoutRead = Authenticator( 1a

11 required_scopes={ 

12 Scope.web_read, 

13 Scope.web_write, 

14 Scope.checkouts_read, 

15 Scope.checkouts_write, 

16 }, 

17 allowed_subjects={User, Organization}, 

18) 

19CheckoutRead = Annotated[AuthSubject[User | Organization], Depends(_CheckoutRead)] 1a

20 

21_CheckoutWrite = Authenticator( 1a

22 required_scopes={Scope.checkouts_write}, 

23 allowed_subjects={User, Organization}, 

24) 

25CheckoutWrite = Annotated[AuthSubject[User | Organization], Depends(_CheckoutWrite)] 1a

26 

27_CheckoutWeb = Authenticator( 1a

28 required_scopes={Scope.web_write}, 

29 allowed_subjects={User, Anonymous}, 

30) 

31CheckoutWeb = Annotated[AuthSubject[User | Anonymous], Depends(_CheckoutWeb)] 1a