def test_channel_remove_owner():
    'Normal case'
    workspace_reset()

    ret = register_and_create()
    user1 = ret['user']
    token1 = user1['token']
    u_id1 = user1['u_id']
    channel_info = ret['channel']
    user2 = reg_user2()
    token2 = user2['token']
    u_id2 = user2['u_id']

    channel_id = channel_info['channel_id']

    channel.join(token2, channel_id)
    channel.addowner(token1, channel_id, u_id2)

    # User2 removes user1 as owner
    channel.removeowner(token2, channel_id, u_id1)

    assert channel.details(token1, channel_id)['owner_members'] == [{
        "u_id":
        u_id2,
        "name_first":
        'Cindy',
        "name_last":
        'Tran'
    }]
示例#2
0
def test_not_owner():
    'Non-owner case'
    workspace_reset()
    ret = register_and_create()
    user1 = ret['user']
    channel_info = ret['channel']
    user2 = reg_user2()
    token2 = user2['token']
    user3 = reg_user3()
    token3 = user3['token']
    u_id3 = user3['u_id']

    channel_id = channel_info['channel_id']

    channel.join(token3, channel_id)

    # AccessError when non-owner tries to make user3 as owner
    with pytest.raises(AccessError):
        channel.addowner(token2, channel_id, u_id3)
示例#3
0
def test_invalid_channel():
    'Invalid channel case'
    workspace_reset()

    ret = register_and_create()
    user1 = ret['user']
    token1 = user1['token']
    channel_info = ret['channel']
    user2 = reg_user2()
    token2 = user2['token']
    u_id2 = user2['u_id']

    channel_id = channel_info['channel_id']

    channel.join(token2, channel_id)

    # Invalid channel_id = 100
    with pytest.raises(InputError):
        channel.addowner(token1, 100, u_id2)
def test_userid_not_owner():
    'User is not an owner case'
    workspace_reset()

    ret = register_and_create()
    user1 = ret['user']
    token1 = user1['token']
    channel_info = ret['channel']
    user2 = reg_user2()
    token2 = user2['token']
    u_id2 = user2['u_id']

    channel_id = channel_info['channel_id']

    channel.join(token2, channel_id)
    channel.addowner(token1, channel_id, u_id2)

    # Invalid user_id = 100
    with pytest.raises(InputError) as e:
        channel.removeowner(token2, channel_id, 100)
示例#5
0
def test_already_owner():
    'Already an owner case'
    workspace_reset()
    ret = register_and_create()
    user1 = ret['user']
    token1 = user1['token']
    channel_info = ret['channel']
    user2 = reg_user2()
    token2 = user2['token']
    u_id2 = user2['u_id']

    channel_id = channel_info['channel_id']

    channel.join(token2, channel_id)

    channel.addowner(token1, channel_id, u_id2)

    # InputError because user2 is already an owner
    with pytest.raises(InputError):
        channel.addowner(token1, channel_id, u_id2)