mirror of
https://github.com/aiogram/aiogram.git
synced 2026-04-08 16:37:47 +00:00
AIOG-T-47. User property url added
* property added * unit tests added
This commit is contained in:
parent
27b05c4843
commit
05d69c48e9
2 changed files with 19 additions and 0 deletions
|
|
@ -39,3 +39,10 @@ class User(TelegramObject):
|
|||
if self.last_name:
|
||||
return f"{self.first_name} {self.last_name}"
|
||||
return self.first_name
|
||||
|
||||
@property
|
||||
def url(self) -> str:
|
||||
"""
|
||||
Get user's profile url.
|
||||
"""
|
||||
return f"tg://user?id={self.id}"
|
||||
|
|
|
|||
|
|
@ -24,3 +24,15 @@ class TestUser:
|
|||
def test_full_name(self, first_name: str, last_name: str, expected_full_name: str):
|
||||
user = User(id=42, is_bot=False, first_name=first_name, last_name=last_name)
|
||||
assert user.full_name == expected_full_name
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
"user_id, expected_url",
|
||||
[
|
||||
[42, "tg://user?id=42"],
|
||||
[0, "tg://user?id=0"],
|
||||
[-9999999999999999, "tg://user?id=-9999999999999999"],
|
||||
],
|
||||
)
|
||||
def test_url(self, user_id: int, expected_url: str):
|
||||
user = User(id=user_id, is_bot=False, first_name="User", last_name="Name")
|
||||
assert user.url == expected_url
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue