cuenca 2.0.1__tar.gz → 2.0.2.dev1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/PKG-INFO +1 -1
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/__init__.py +2 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/__init__.py +3 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/api_keys.py +3 -3
- cuenca-2.0.2.dev1/cuenca/resources/jwt_tokens.py +44 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/login_tokens.py +4 -1
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/otps.py +3 -2
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/sessions.py +3 -3
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/version.py +1 -1
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca.egg-info/PKG-INFO +1 -1
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca.egg-info/SOURCES.txt +2 -0
- cuenca-2.0.2.dev1/tests/resources/test_jwt_tokens.py +28 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/LICENSE +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/README.md +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/exc.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/http/__init__.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/http/client.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/jwt.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/py.typed +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/accounts.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/arpc.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/balance_entries.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/base.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/bill_payments.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/card_activations.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/card_transactions.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/card_validations.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/cards.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/cash_references.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/clabes.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/commissions.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/curp_validations.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/deposits.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/endpoints.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/file_batches.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/files.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/identities.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/identity_events.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/kyc_validations.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/kyc_verifications.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/limited_wallets.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/platforms.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/questionnaires.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/resources.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/savings.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/service_providers.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/statements.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/transfers.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/user_credentials.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/user_events.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/user_lists_validation.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/user_logins.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/users.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/verifications.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/wallet_transactions.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/webhooks.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca/resources/whatsapp_transfers.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca.egg-info/dependency_links.txt +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca.egg-info/requires.txt +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/cuenca.egg-info/top_level.txt +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/setup.cfg +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/setup.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/__init__.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/conftest.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/http/__init__.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/http/conftest.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/http/test_client.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/__init__.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_accounts.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_api_keys.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_arpc.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_balance_entries.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_bill_payments.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_card_activations.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_card_transactions.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_card_validations.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_cards.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_cash_references.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_clabes.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_commissions.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_curp_validations.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_deposits.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_endpoints.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_file_batches.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_files.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_identities.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_identity_events.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_kyc_validations.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_kyc_verifications.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_limited_wallets.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_login_tokens.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_otps.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_platforms.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_questionnaires.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_resources.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_savings.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_service_providers.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_sessions.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_statements.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_transfers.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_user_credentials.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_user_events.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_user_lists_validation.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_user_logins.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_users.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_verifications.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_wallet_transactions.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_webhooks.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/resources/test_whatsapp_transfers.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/test_cuenca.py +0 -0
- {cuenca-2.0.1 → cuenca-2.0.2.dev1}/tests/test_jwt.py +0 -0
|
@@ -42,6 +42,7 @@ __all__ = [
|
|
|
42
42
|
'WhatsappTransfer',
|
|
43
43
|
'configure',
|
|
44
44
|
'get_balance',
|
|
45
|
+
'JwtToken',
|
|
45
46
|
]
|
|
46
47
|
|
|
47
48
|
from . import http
|
|
@@ -65,6 +66,7 @@ from .resources import (
|
|
|
65
66
|
FileBatch,
|
|
66
67
|
Identity,
|
|
67
68
|
IdentityEvent,
|
|
69
|
+
JwtToken,
|
|
68
70
|
KYCValidation,
|
|
69
71
|
KYCVerification,
|
|
70
72
|
LimitedWallet,
|
|
@@ -38,6 +38,7 @@ __all__ = [
|
|
|
38
38
|
'WalletTransaction',
|
|
39
39
|
'Webhook',
|
|
40
40
|
'WhatsappTransfer',
|
|
41
|
+
'JwtToken',
|
|
41
42
|
]
|
|
42
43
|
|
|
43
44
|
from .accounts import Account
|
|
@@ -59,6 +60,7 @@ from .file_batches import FileBatch
|
|
|
59
60
|
from .files import File
|
|
60
61
|
from .identities import Identity
|
|
61
62
|
from .identity_events import IdentityEvent
|
|
63
|
+
from .jwt_tokens import JwtToken
|
|
62
64
|
from .kyc_validations import KYCValidation
|
|
63
65
|
from .kyc_verifications import KYCVerification
|
|
64
66
|
from .limited_wallets import LimitedWallet
|
|
@@ -123,6 +125,7 @@ resource_classes = [
|
|
|
123
125
|
WhatsappTransfer,
|
|
124
126
|
Webhook,
|
|
125
127
|
Platform,
|
|
128
|
+
JwtToken,
|
|
126
129
|
]
|
|
127
130
|
for resource_cls in resource_classes:
|
|
128
131
|
RESOURCES[resource_cls._resource] = resource_cls # type: ignore
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import datetime as dt
|
|
2
|
-
from typing import ClassVar, Optional
|
|
2
|
+
from typing import Annotated, ClassVar, Optional
|
|
3
3
|
|
|
4
|
-
from cuenca_validations.types import ApiKeyQuery, ApiKeyUpdateRequest
|
|
4
|
+
from cuenca_validations.types import ApiKeyQuery, ApiKeyUpdateRequest, Metadata
|
|
5
5
|
from pydantic import ConfigDict
|
|
6
6
|
|
|
7
7
|
from ..http import Session, session as global_session
|
|
@@ -12,7 +12,7 @@ class ApiKey(Creatable, Queryable, Retrievable, Updateable):
|
|
|
12
12
|
_resource: ClassVar = 'api_keys'
|
|
13
13
|
_query_params: ClassVar = ApiKeyQuery
|
|
14
14
|
|
|
15
|
-
secret: str
|
|
15
|
+
secret: Annotated[str, Metadata(sensitive=True, log_chars=4)]
|
|
16
16
|
deactivated_at: Optional[dt.datetime] = None
|
|
17
17
|
user_id: Optional[str] = None
|
|
18
18
|
model_config = ConfigDict(
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import datetime as dt
|
|
2
|
+
from typing import Annotated, ClassVar
|
|
3
|
+
|
|
4
|
+
from cuenca_validations.types import Metadata
|
|
5
|
+
from pydantic import ConfigDict
|
|
6
|
+
|
|
7
|
+
from ..http import Session, session as global_session
|
|
8
|
+
from .base import Creatable
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class JwtToken(Creatable):
|
|
12
|
+
_resource: ClassVar = 'token'
|
|
13
|
+
|
|
14
|
+
id: Annotated[str, Metadata(sensitive=True, log_chars=4)]
|
|
15
|
+
token: Annotated[str, Metadata(sensitive=True, log_chars=4)]
|
|
16
|
+
created_at: dt.datetime
|
|
17
|
+
api_key_uri: str
|
|
18
|
+
|
|
19
|
+
model_config = ConfigDict(
|
|
20
|
+
json_schema_extra={
|
|
21
|
+
'example': {
|
|
22
|
+
'id': (
|
|
23
|
+
'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3MzgzNjI'
|
|
24
|
+
'4NzcsImlhdCI6MTczNzc1ODA3Nywic3ViIjoiQUtzY3p5N3RzaVJkMkl'
|
|
25
|
+
'iakxfbllGb2xRIiwidWlkIjoiNjRiZmQ0OTItZGFhMy0xMWVmLWEyMWU'
|
|
26
|
+
'tMGE1OGE5ZmVhYzAyIn0.Er8kDsw4rtGkwAXpEgUhwyXFiBjYlwDVTGF'
|
|
27
|
+
'tYW7o0go'
|
|
28
|
+
),
|
|
29
|
+
'token': (
|
|
30
|
+
'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3MzgzNjI'
|
|
31
|
+
'4NzcsImlhdCI6MTczNzc1ODA3Nywic3ViIjoiQUtzY3p5N3RzaVJkMkl'
|
|
32
|
+
'iakxfbllGb2xRIiwidWlkIjoiNjRiZmQ0OTItZGFhMy0xMWVmLWEyMWU'
|
|
33
|
+
'tMGE1OGE5ZmVhYzAyIn0.Er8kDsw4rtGkwAXpEgUhwyXFiBjYlwDVTGF'
|
|
34
|
+
'tYW7o0go'
|
|
35
|
+
),
|
|
36
|
+
'created_at': '2025-01-24T22:34:37.659667',
|
|
37
|
+
'api_key_uri': '/api_key/AKsczy7tsiRd2IbjL_nYFolQ',
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
)
|
|
41
|
+
|
|
42
|
+
@classmethod
|
|
43
|
+
def create(cls, session: Session = global_session) -> 'JwtToken':
|
|
44
|
+
return cls._create(session=session)
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
from typing import ClassVar
|
|
1
|
+
from typing import Annotated, ClassVar
|
|
2
2
|
|
|
3
|
+
from cuenca_validations.types import Metadata
|
|
3
4
|
from pydantic import ConfigDict
|
|
4
5
|
|
|
5
6
|
from ..http import Session, session as global_session
|
|
@@ -9,6 +10,8 @@ from .base import Creatable
|
|
|
9
10
|
class LoginToken(Creatable):
|
|
10
11
|
_resource: ClassVar = 'login_tokens'
|
|
11
12
|
|
|
13
|
+
id: Annotated[str, Metadata(sensitive=True, log_chars=4)]
|
|
14
|
+
|
|
12
15
|
model_config = ConfigDict(
|
|
13
16
|
json_schema_extra={'example': {'id': 'LTNEUInh69SuKXXmK95sROwQ'}}
|
|
14
17
|
)
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
from typing import ClassVar
|
|
1
|
+
from typing import Annotated, ClassVar
|
|
2
2
|
|
|
3
|
+
from cuenca_validations.types import Metadata
|
|
3
4
|
from pydantic import ConfigDict
|
|
4
5
|
|
|
5
6
|
from ..http import Session, session as global_session
|
|
@@ -8,7 +9,7 @@ from .base import Creatable
|
|
|
8
9
|
|
|
9
10
|
class Otp(Creatable):
|
|
10
11
|
_resource: ClassVar = 'otps'
|
|
11
|
-
secret: str
|
|
12
|
+
secret: Annotated[str, Metadata(sensitive=True, log_chars=4)]
|
|
12
13
|
|
|
13
14
|
model_config = ConfigDict(
|
|
14
15
|
json_schema_extra={
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import datetime as dt
|
|
2
|
-
from typing import ClassVar, Optional
|
|
2
|
+
from typing import Annotated, ClassVar, Optional
|
|
3
3
|
|
|
4
|
-
from cuenca_validations.types import SessionRequest, SessionType
|
|
4
|
+
from cuenca_validations.types import Metadata, SessionRequest, SessionType
|
|
5
5
|
from cuenca_validations.types.general import SerializableAnyUrl
|
|
6
6
|
from pydantic import ConfigDict
|
|
7
7
|
|
|
@@ -12,7 +12,7 @@ from .base import Creatable, Queryable, Retrievable
|
|
|
12
12
|
class Session(Creatable, Retrievable, Queryable):
|
|
13
13
|
_resource: ClassVar = 'sessions'
|
|
14
14
|
|
|
15
|
-
id: str
|
|
15
|
+
id: Annotated[str, Metadata(sensitive=True, log_chars=4)]
|
|
16
16
|
created_at: dt.datetime
|
|
17
17
|
user_id: str
|
|
18
18
|
platform_id: str
|
|
@@ -35,6 +35,7 @@ cuenca/resources/file_batches.py
|
|
|
35
35
|
cuenca/resources/files.py
|
|
36
36
|
cuenca/resources/identities.py
|
|
37
37
|
cuenca/resources/identity_events.py
|
|
38
|
+
cuenca/resources/jwt_tokens.py
|
|
38
39
|
cuenca/resources/kyc_validations.py
|
|
39
40
|
cuenca/resources/kyc_verifications.py
|
|
40
41
|
cuenca/resources/limited_wallets.py
|
|
@@ -84,6 +85,7 @@ tests/resources/test_file_batches.py
|
|
|
84
85
|
tests/resources/test_files.py
|
|
85
86
|
tests/resources/test_identities.py
|
|
86
87
|
tests/resources/test_identity_events.py
|
|
88
|
+
tests/resources/test_jwt_tokens.py
|
|
87
89
|
tests/resources/test_kyc_validations.py
|
|
88
90
|
tests/resources/test_kyc_verifications.py
|
|
89
91
|
tests/resources/test_limited_wallets.py
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import pytest
|
|
2
|
+
|
|
3
|
+
from cuenca import JwtToken, LoginToken, UserLogin
|
|
4
|
+
from cuenca.http.client import Session
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
@pytest.fixture(scope='function')
|
|
8
|
+
def session():
|
|
9
|
+
session = Session()
|
|
10
|
+
session.configure(
|
|
11
|
+
'api_key',
|
|
12
|
+
'api_secret',
|
|
13
|
+
sandbox=True,
|
|
14
|
+
)
|
|
15
|
+
return session
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
@pytest.mark.vcr
|
|
19
|
+
def test_jwt_tokens(session):
|
|
20
|
+
UserLogin.create('111111', session=session)
|
|
21
|
+
login_token = LoginToken.create(session=session)
|
|
22
|
+
session.headers.pop(
|
|
23
|
+
'X-Cuenca-LoginId',
|
|
24
|
+
)
|
|
25
|
+
session.configure(login_token=login_token.id)
|
|
26
|
+
jwt_token = JwtToken.create(session=session)
|
|
27
|
+
assert jwt_token
|
|
28
|
+
assert isinstance(jwt_token.token, str)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|