Files
2024-02-15 17:01:50 +00:00

39 lines
1.2 KiB
Python

from django.contrib.contenttypes.models import ContentType
from sentry.services.hybrid_cloud.user.serial import serialize_rpc_user
from sentry.testutils.cases import TestCase
from sentry.testutils.silo import no_silo_test
from social_auth.utils import ctype_to_model, model_to_ctype
@no_silo_test
class TestSocialAuthUtils(TestCase):
def test_model_to_ctype(self):
val = model_to_ctype(1)
assert val == 1
val = model_to_ctype(None)
assert val is None
user = self.create_user()
val = model_to_ctype(user)
assert val == {"pk": user.id, "ctype": ContentType.objects.get_for_model(user).pk}
rpc_user = serialize_rpc_user(user)
val = model_to_ctype(rpc_user)
assert val == rpc_user.dict()
def test_ctype_to_model(self):
val = ctype_to_model(1)
assert val == 1
val = ctype_to_model(None)
assert val is None
user = self.create_user()
ctype_val = {"pk": user.id, "ctype": ContentType.objects.get_for_model(user).pk}
assert ctype_to_model(ctype_val) == user
rpc_user = serialize_rpc_user(user)
assert ctype_to_model(rpc_user.dict()) == rpc_user