You've already forked hotpocket
BTHLABS-50: Safari Web Extension: Reloaded
Turns out, getting this thing out into the wild isn't as simple as I thought :D Co-authored-by: Tomek Wójcik <labs@tomekwojcik.pl> Co-committed-by: Tomek Wójcik <labs@tomekwojcik.pl>
This commit is contained in:
@@ -11,7 +11,7 @@ from hotpocket_backend.apps.accounts.models import AccessToken
|
||||
def AccessTokenMetaFactory() -> dict:
|
||||
return {
|
||||
'platform': 'MacIntel',
|
||||
'version': '1987.10.03',
|
||||
'version': '1985.12.12',
|
||||
}
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@ class AccessTokenFactory(factory.django.DjangoModelFactory):
|
||||
account_uuid = None
|
||||
key = factory.LazyFunction(lambda: str(uuid.uuid4()))
|
||||
origin = factory.LazyFunction(
|
||||
lambda: f'safari-web-extension//{uuid.uuid4()}',
|
||||
lambda: f'safari-web-extension://{uuid.uuid4()}',
|
||||
)
|
||||
meta = factory.LazyFunction(AccessTokenMetaFactory)
|
||||
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
from .access_token import * # noqa: F401,F403
|
||||
from .account import * # noqa: F401,F403
|
||||
from .apps import * # noqa: F401,F403
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# type: ignore
|
||||
from __future__ import annotations
|
||||
|
||||
import uuid
|
||||
|
||||
import pytest
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def safari_extension_origin():
|
||||
return f'safari-web-extension://{uuid.uuid4()}'
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def safari_extension_meta():
|
||||
return {
|
||||
'platform': 'MacIntel',
|
||||
'version': '1987.10.03',
|
||||
}
|
||||
@@ -24,15 +24,28 @@ class AccessTokensTestingService:
|
||||
assert access_token.updated_at is not None
|
||||
|
||||
def assert_deleted(self, *, pk: uuid.UUID, reference: typing.Any = None):
|
||||
association = AccessToken.objects.get(pk=pk)
|
||||
assert association.deleted_at is not None
|
||||
access_token = AccessToken.objects.get(pk=pk)
|
||||
assert access_token.deleted_at is not None
|
||||
|
||||
if reference is not None:
|
||||
assert association.updated_at > reference.updated_at
|
||||
assert access_token.updated_at > reference.updated_at
|
||||
|
||||
def assert_not_deleted(self, *, pk: uuid.UUID, reference: typing.Any = None):
|
||||
association = AccessToken.objects.get(pk=pk)
|
||||
assert association.deleted_at is None
|
||||
access_token = AccessToken.objects.get(pk=pk)
|
||||
assert access_token.deleted_at is None
|
||||
|
||||
if reference is not None:
|
||||
assert association.updated_at == reference.updated_at
|
||||
assert access_token.updated_at == reference.updated_at
|
||||
|
||||
def assert_meta_updated(self, *, pk: uuid.UUID, meta_update: dict, reference: typing.Any = None):
|
||||
access_token = AccessToken.objects.get(pk=pk)
|
||||
|
||||
if len(meta_update) > 0 and reference is not None:
|
||||
expected_meta = {
|
||||
**reference.meta,
|
||||
**meta_update,
|
||||
}
|
||||
assert access_token.meta == expected_meta
|
||||
|
||||
if reference is not None:
|
||||
assert access_token.updated_at > reference.updated_at
|
||||
|
||||
Reference in New Issue
Block a user