kopia lustrzana https://github.com/snarfed/bridgy-fed
User.handle_as: handle when handle isn't set
for https://console.cloud.google.com/errors/detail/CIT9-r3d-MKW5AE;time=P30D?project=bridgy-federatedas2-actor-ids
rodzic
22b80e4eaf
commit
f27e914a89
|
@ -324,6 +324,8 @@ class User(StringIdModel, metaclass=ProtocolUserMeta):
|
|||
|
||||
# override web users to always use domain instead of custom username
|
||||
handle = self.key.id() if self.LABEL == 'web' else self.handle
|
||||
if not handle:
|
||||
return None
|
||||
|
||||
return ids.translate_handle(handle=handle, from_proto=self.__class__,
|
||||
to_proto=to_proto)
|
||||
|
|
|
@ -166,6 +166,15 @@ class UserTest(TestCase):
|
|||
self.assertEqual('alice', self.user.username())
|
||||
self.assertEqual('@y.z@web.brid.gy', self.user.handle_as('ap'))
|
||||
|
||||
def test_handle_as_None(self):
|
||||
class NoHandle(Fake):
|
||||
@ndb.ComputedProperty
|
||||
def handle(self):
|
||||
return None
|
||||
|
||||
user = NoHandle()
|
||||
self.assertIsNone(user.handle_as(OtherFake))
|
||||
|
||||
@patch('requests.get', return_value=requests_response(DID_DOC))
|
||||
def test_ap_actor(self, mock_get):
|
||||
user = self.make_user('did:plc:abc', cls=ATProto)
|
||||
|
|
Ładowanie…
Reference in New Issue