Power On Self Test for the brain.

    Checks that the brain is appropriately seeded and ready for use.

    Raises AssertionError's if the brain is not ready.

    :param connection:  <rethinkdb.net.DefaultConnection>
    :param requirements:<dict> keys=Required Databases, key-values=Required Tables in each database
    :return: <rethinkdb.net.DefaultConnection> if verified

def brain_post(connection, requirements=None):
    """
    Power On Self Test for the brain.

    Checks that the brain is appropriately seeded and ready for use.

    Raises AssertionError's if the brain is not ready.

    :param connection:  <rethinkdb.net.DefaultConnection>
    :param requirements:<dict> keys=Required Databases, key-values=Required Tables in each database
    :return: <rethinkdb.net.DefaultConnection> if verified
    """
    assert isinstance(connection, DefaultConnection)
    remote_dbs = validate_get_dbs(connection)
    assert validate_brain_requirements(connection, remote_dbs, requirements)
    assert validate_write_access(connection)
    return connection