Ejemplo n.º 1
0
def test_set_password():
    '''Test the SETPASSWORD command'''
    dbconn = setup_test()
    dbdata = init_server(dbconn)

    conn = serverconn.ServerConnection()
    status = conn.connect('localhost', 2001)
    assert not status.error(
    ), f"test_set_password(): failed to connect to server: {status.info()}"

    # Moved all the test code to integration_setup.init_admin(), because that kind of setup is
    # needed for other tests.
    status = init_admin(conn, dbdata)
    assert not status.error(
    ), f"test_set_password(): init_admin failed: {status.info()}"

    badpassword = Password('MyS3cretPassw*rd')
    newpassword = Password('Renovate-Baggy-Grunt-Override')
    status = serverconn.setpassword(conn, badpassword.hashstring,
                                    newpassword.hashstring)
    assert status.error() and status['Code'] == 402, \
     "test_set_password: failed to catch bad password"

    status = serverconn.setpassword(conn, dbdata['admin_password'].hashstring,
                                    newpassword.hashstring)
    assert not status.error(), "test_set_password: failed to update password"

    conn.disconnect()
Ejemplo n.º 2
0
def test_addentry():
    '''Tests the addentry() command'''
    dbconn = setup_test()
    dbdata = init_server(dbconn)

    conn = serverconn.ServerConnection()
    status = conn.connect('localhost', 2001)
    assert not status.error(
    ), f"test_addentry(): failed to connect to server: {status.info()}"

    # Moved all the test code to integration_setup.init_admin(), because that kind of setup is
    # needed for other tests.
    status = init_admin(conn, dbdata)
    assert not status.error(
    ), f"test_addentry(): init_admin failed: {status.info()}"

    conn.disconnect()
Ejemplo n.º 3
0
def test_unregister():
    '''Tests the unregister() command'''
    dbconn = setup_test()
    dbdata = init_server(dbconn)

    conn = serverconn.ServerConnection()
    status = conn.connect('localhost', 2001)
    assert not status.error(
    ), f"test_unregister(): failed to connect to server: {status.info()}"

    status = init_admin(conn, dbdata)
    assert not status.error(
    ), f"test_unregister(): init_admin failed: {status.info()}"

    status = init_user(conn, dbdata)
    assert not status.error(
    ), f"test_unregister(): init_user failed: {status.info()}"

    status = serverconn.logout(conn)
    assert not status.error(
    ), f"test_unregister(): logout failed: {status.info()}"

    status = serverconn.login(conn, dbdata['user_wid'],
                              CryptoString(dbdata['oekey']))
    assert not status.error(
    ), f"test_unregister(): user login phase failed: {status.info()}"

    status = serverconn.password(conn, dbdata['user_wid'],
                                 dbdata['user_password'].hashstring)
    assert not status.error(
    ), f"test_unregister(): password phase failed: {status.info()}"

    status = serverconn.device(conn, dbdata['user_devid'],
                               dbdata['user_devpair'])
    assert not status.error(
    ), f"test_unregister(): device phase failed: {status.info()}"

    status = serverconn.unregister(conn, dbdata['user_password'].hashstring,
                                   '')
    assert not status.error(
    ), f"test_unregister(): unregister failed: {status.info()}"

    conn.disconnect()
Ejemplo n.º 4
0
def test_getwid():
    '''Tests serverconn.getwid(), which returns a WID for an Anselus address'''

    dbconn = setup_test()
    dbdata = init_server(dbconn)

    conn = serverconn.ServerConnection()
    status = conn.connect('localhost', 2001)
    assert not status.error(
    ), f"test_getwid(): failed to connect to server: {status.info()}"

    status = init_admin(conn, dbdata)
    assert not status.error(
    ), f"test_getwid(): init_admin failed: {status.info()}"

    status = serverconn.getwid(conn, 'admin', 'example.com')
    assert not status.error(), f"test_getwid(): getwid failed: {status.info()}"
    assert status['Workspace-ID'] == dbdata[
        'admin_wid'], "test_getwid(): admin wid mismatch"

    conn.disconnect()
Ejemplo n.º 5
0
def test_set_status():
    '''Test the SETSTATUS command'''
    dbconn = setup_test()
    dbdata = init_server(dbconn)

    conn = serverconn.ServerConnection()
    status = conn.connect('localhost', 2001)
    assert not status.error(
    ), f"test_set_workstatus(): failed to connect to server: {status.info()}"

    status = init_admin(conn, dbdata)
    assert not status.error(
    ), f"test_set_workstatus(): init_admin failed: {status.info()}"

    status = init_user(conn, dbdata)
    assert not status.error(
    ), f"test_set_workstatus(): init_user failed: {status.info()}"

    status = serverconn.setstatus(conn, dbdata['user_wid'], 'disabled')
    assert not status.error(
    ), f"test_set_workstatus(): set_workstatus failed: {status.info()}"

    conn.disconnect()
Ejemplo n.º 6
0
def test_devkey():
    '''Tests the devkey() command'''
    dbconn = setup_test()
    dbdata = init_server(dbconn)

    conn = serverconn.ServerConnection()
    status = conn.connect('localhost', 2001)
    assert not status.error(
    ), f"test_devkey(): failed to connect to server: {status.info()}"

    status = init_admin(conn, dbdata)
    assert not status.error(
    ), f"test_devkey(): init_admin failed: {status.info()}"

    newdevpair = EncryptionPair(
        CryptoString(r'CURVE25519:mO?WWA-k2B2O|Z%fA`~s3^$iiN{5R->#jxO@cy6{'),
        CryptoString(r'CURVE25519:2bLf2vMA?GA2?L~tv<PA9XOw6e}V~ObNi7C&qek>'))

    status = serverconn.devkey(conn, dbdata['admin_devid'],
                               dbdata['admin_devpair'], newdevpair)
    assert not status.error(
    ), f"test_devkey(): error returned: {status.info()}"

    conn.disconnect()