Exemplo n.º 1
0
def standup_send(token, channel_id, message):
    channels = getChannelData()
    users = getUserData()
    channel_id = int(channel_id)
    authorised_u_id = get_u_id(token)

    if not channel_exists_persist(channel_id):
        raise InputError('Invalid channel')

    if not user_in_channel_persist(authorised_u_id, channel_id):
        raise AccessError('User not a member of channel')
    if len(message) > 1000:
        raise InputError("Message too long")

    for channel in channels:
        if channel['channel_id'] == channel_id:
            if channel['is_standup'] == False:
                raise InputError("Channel not in standup")
    for user in users:
        if user['u_id'] == authorised_u_id:
            handle = user['handle_str']

    new_message = handle + ": " + message + "\n"

    for channel in channels:
        if channel['channel_id'] == channel_id:
            channel['standup'] = channel['standup'] + new_message

    saveChannelData(channels)
    return {}
Exemplo n.º 2
0
def test_users_all_http(url):
    resetData()
    clear()
    user1data = {
        'email': '*****@*****.**',
        'password': '******',
        'name_first': 'Frank',
        'name_last': 'Su'
    }
    user1 = requests.post(f"{url}/auth/register", json=user1data)
    user1_dict = user1.json()
    user1token = user1_dict['token']

    users = getUserData()

    print("Users:\n", users)
    usersallparam = {"token": user1token}

    resp1 = requests.get(f"{url}/users/all", params=usersallparam)
    resp1_dict = resp1.json()

    print("\nResp\n", resp1)
    print("Resp1_dict:", resp1_dict)

    assert 'users' in resp1_dict
Exemplo n.º 3
0
def users_all(token):
    users = getUserData()
    u_id = get_u_id(token)

    if (user_exists_persist(int(u_id))):
        return {"users": users}
    else:  # pragma: no cover cannot test this as not way to fake a invalid token
        return {}
def test_auth_passwordreset_reset_http(url):

    resetData()

    #creating user data
    registerdata = {
        'email': '*****@*****.**',
        'password': '******',
        'name_first': 'Frank',
        'name_last': 'Su'
    }

    #registering user
    requests.post(f"{url}/auth/register", json=registerdata)

    #requesting a password reset
    resp = requests.post(f"{url}/auth/passwordreset/request",
                         json={'email': '*****@*****.**'})
    print(json.loads(resp.text))
    assert resp.status_code == 200

    #finding users status code
    users = getUserData()
    for user in users:
        if user['u_id'] == 1:
            reset_code = user['reset_code']
            break

    print(users)

    #testing password reset
    resp = requests.post(f"{url}/auth/passwordreset/reset",
                         json={
                             'reset_code': reset_code,
                             'new_password': "******"
                         })
    print(json.loads(resp.text))
    assert resp.status_code == 200
    resp_dict = (json.loads(resp.text))
    assert resp_dict == {}
def test_channel_details_http(url):
    '''
    Http test for channel_details
    '''
    resetData()
    user1data = {
        'email': '*****@*****.**',
        'password': '******',
        'name_first': 'Frank',
        'name_last': 'Su'
    }
    user1 = requests.post(f"{url}/auth/register", json=user1data)
    user1_dict = user1.json()
    user1token = user1_dict['token']

    channel1 = {'token': user1token, 'name': "Test_channel", 'is_public': True}

    new_channel = requests.post(f"{url}/channels/create", json=channel1)
    assert new_channel.status_code == 200
    new_channel_dict = new_channel.json()
    print("\nnew_channel_dict:", new_channel_dict)
    channel_id = new_channel_dict['channel_id']

    channeldetailparam = {'token': user1token, 'channel_id': channel_id}

    channels = getChannelData()
    users = getUserData()

    print("\nChannels:\n", channels)
    print("\nUsers:\n", users)
    resp = requests.get(f"{url}channel/details", params=channeldetailparam)
    print("\nresp:", resp)
    resp_dict = resp.json()
    print("\nresp_dict:", resp_dict)
    assert 'name' in resp_dict
    assert 'owner_members' in resp_dict
    assert 'all_members' in resp_dict
Exemplo n.º 6
0
def test_channel_invite_http(url):
    resetData()
    clear()
    channels = getChannelData()
    print("\nChannels_start:\n", channels)
    users = getUserData()
    print("\nUsers_start:\n", users)

    #Code block each registers a user
    user1data = {
        'email': '*****@*****.**',
        'password': '******',
        'name_first': 'Frank',
        'name_last': 'Su'
    }
    user1 = requests.post(f"{url}/auth/register", json=user1data)
    user1_dict = user1.json()
    user1token = user1_dict['token']

    #Code block registers a user
    user2data = {
        'email': '*****@*****.**',
        'password': '******',
        'name_first': 'Howard',
        'name_last': 'Fog'
    }
    user2 = requests.post(f"{url}/auth/register", json=user2data)
    assert user2.status_code == 200

    #Extracts elements from the response dictionary and stores into varaibles

    user2_dict = user2.json()
    user2u_id = user2_dict['u_id']

    channel1 = {'token': user1token, 'name': "Test_channel", 'is_public': True}

    new_channel = requests.post(f"{url}/channels/create", json=channel1)
    assert new_channel.status_code == 200
    new_channel_dict = new_channel.json()

    channel_id = new_channel_dict['channel_id']

    print("\nUser1token:", user1token)
    print("Channel_id:", channel_id)
    print("User2id:", user2u_id)

    channelinvitedata = {
        "token": user1token,
        "channel_id": channel_id,
        "u_id": user2u_id
    }

    resp = requests.post(f"{url}/channel/invite", json=channelinvitedata)
    print("\nResp:", resp)
    resp_dict = resp.json()
    print("Resp_dict:", resp_dict)

    channels = getChannelData()
    print("\nChannels_end:\n", channels)
    users = getUserData()
    print("\nUsers_end:\n", users)
    assert resp_dict == {}