| import pytest |
| import responses |
|
|
| from matrix_client.api import MATRIX_V2_API_PATH |
| from matrix_client.client import MatrixClient |
| from matrix_client.user import User |
|
|
| HOSTNAME = "http://localhost" |
|
|
|
|
| class TestUser: |
| cli = MatrixClient(HOSTNAME) |
| user_id = "@test:localhost" |
| room_id = "!test:localhost" |
|
|
| @pytest.fixture() |
| def user(self): |
| return User(self.cli.api, self.user_id) |
|
|
| @pytest.fixture() |
| def room(self): |
| return self.cli._mkroom(self.room_id) |
|
|
| @responses.activate |
| def test_get_display_name(self, user, room): |
| displayname_url = HOSTNAME + MATRIX_V2_API_PATH + \ |
| "/profile/{}/displayname".format(user.user_id) |
| displayname = 'test' |
| room_displayname = 'room_test' |
|
|
| |
| assert user.get_display_name(room) == user.user_id |
| responses.add(responses.GET, displayname_url, json={}) |
| assert user.get_display_name() == user.user_id |
| assert len(responses.calls) == 1 |
|
|
| |
| responses.replace(responses.GET, displayname_url, |
| json={"displayname": displayname}) |
| assert user.get_display_name() == displayname |
| assert len(responses.calls) == 2 |
|
|
| |
| assert user.get_display_name() == displayname |
| |
| assert len(responses.calls) == 2 |
|
|
| |
| room.members_displaynames[user.user_id] = room_displayname |
| assert user.get_display_name(room) == room_displayname |
| |
| assert len(responses.calls) == 2 |
|
|