Ejemplo n.º 1
0
    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)
Ejemplo n.º 2
0
    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
Ejemplo n.º 3
0
    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"
Ejemplo n.º 4
0
 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
Ejemplo n.º 5
0
    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"