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

11 statements  

« prev     ^ index     » next       coverage.py v7.10.6, created at 2025-12-05 15:52 +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, Organization, User 1a

7from polar.auth.scope import Scope 1a

8 

9_SeatRead = Authenticator( 1a

10 required_scopes={ 

11 Scope.web_read, 

12 Scope.web_write, 

13 Scope.customer_seats_read, 

14 }, 

15 allowed_subjects={User, Organization}, 

16) 

17SeatRead = Annotated[AuthSubject[User | Organization], Depends(_SeatRead)] 1a

18 

19_SeatWrite = Authenticator( 1a

20 required_scopes={ 

21 Scope.web_write, 

22 Scope.customer_seats_write, 

23 }, 

24 allowed_subjects={User, Organization}, 

25) 

26SeatWrite = Annotated[AuthSubject[User | Organization], Depends(_SeatWrite)] 1a

27 

28_SeatWriteOrAnonymous = Authenticator( 1a

29 required_scopes={ 

30 Scope.web_write, 

31 Scope.customer_seats_write, 

32 }, 

33 allowed_subjects={User, Organization, Anonymous}, 

34) 

35SeatWriteOrAnonymous = Annotated[ 1a

36 AuthSubject[User | Organization | Anonymous], Depends(_SeatWriteOrAnonymous) 

37]