def test_add_members(self, channel: Channel, random_user: Dict): response = channel.remove_members([random_user["id"]]) assert len(response["members"]) == 0 response = channel.add_members([random_user["id"]]) assert len(response["members"]) == 1 assert not response["members"][0].get("is_moderator", False)
def test_add_members_with_additional_options(self, channel: Channel, random_user: Dict): response = channel.remove_members([random_user["id"]]) assert len(response["members"]) == 0 response = channel.add_members([random_user["id"]], hide_history=True) assert len(response["members"]) == 1
def test_query_members(self, client: StreamChat, channel: Channel): members = ["paul", "george", "john", "jessica", "john2"] client.update_users([{"id": m, "name": m} for m in members]) for member in members: channel.add_members([member]) response = channel.query_members( filter_conditions={"name": { "$autocomplete": "j" }}, sort=[{ "field": "created_at", "direction": 1 }], offset=1, limit=10, ) assert len(response) == 2 assert response[0]["user"]["id"] == "jessica" assert response[1]["user"]["id"] == "john2"
def test_channel_hide_show(self, client: StreamChat, channel: Channel, random_users): # setup channel.add_members([u["id"] for u in random_users]) # verify response = client.query_channels({"id": channel.id}) assert len(response["channels"]) == 1 response = client.query_channels({"id": channel.id}, user_id=random_users[0]["id"]) assert len(response["channels"]) == 1 # hide channel.hide(random_users[0]["id"]) response = client.query_channels({"id": channel.id}, user_id=random_users[0]["id"]) assert len(response["channels"]) == 0 # search hidden channels response = client.query_channels({ "id": channel.id, "hidden": True }, user_id=random_users[0]["id"]) assert len(response["channels"]) == 1 # unhide channel.show(random_users[0]["id"]) response = client.query_channels({"id": channel.id}, user_id=random_users[0]["id"]) assert len(response["channels"]) == 1 # hide again channel.hide(random_users[0]["id"]) response = client.query_channels({"id": channel.id}, user_id=random_users[0]["id"]) assert len(response["channels"]) == 0 # send message channel.send_message({"text": "hi"}, random_users[1]["id"]) # channel should be listed now response = client.query_channels({"id": channel.id}, user_id=random_users[0]["id"]) assert len(response["channels"]) == 1
def test_assign_roles_moderators(self, channel: Channel, random_user: Dict): member = { "user_id": random_user["id"], "channel_role": "channel_moderator" } response = channel.add_members([member]) assert len(response["members"]) == 1 assert response["members"][0]["channel_role"] == "channel_moderator" member["channel_role"] = "channel_member" response = channel.assign_roles([member]) assert len(response["members"]) == 1 assert response["members"][0]["channel_role"] == "channel_member"