Example #1
0
def setup_table(table_variable_name, table_name, db_name='test'):
    global required_external_tables
    
    def _teardown_table(table_name, db_name):
        '''Used for tables that get created for this test'''
        res = r.db(db_name).table_drop(table_name).run(driver.connection())
        assert res["tables_dropped"] == 1, 'Failed to delete table %s.%s: %s' % (db_name, table_name, str(res))
    
    def _clean_table(table_name, db_name):
        '''Used for pre-existing tables'''
        res = r.db(db_name).table(table_name).delete().run(driver.connection())
        assert res["errors"] == 0, 'Failed to clean out contents from table %s.%s: %s' % (db_name, table_name, str(res))
        r.db(db_name).table(table_name).index_list().for_each(r.db(db_name).table(table_name).index_drop(r.row)).run(driver.connection())
    
    if len(required_external_tables) > 0:
        db_name, table_name = required_external_tables.pop()
        try:
            r.db(db_name).table(table_name).info(driver.connection())
        except r.ReqlRuntimeError:
            raise AssertionError('External table %s.%s did not exist' % (db_name, table_name))
        atexit.register(_clean_table, table_name=table_name, db_name=db_name)
        
        print('Using existing table: %s.%s, will be %s' % (db_name, table_name, table_variable_name))
    else:
        if table_name in r.db(db_name).table_list().run(driver.connection()):
            r.db(db_name).table_drop(table_name).run(driver.connection())
        res = r.db(db_name).table_create(table_name).run(driver.connection())
        assert res["tables_created"] == 1, 'Unable to create table %s.%s: %s' % (db_name, table_name, str(res))
        r.db(db_name).table(table_name).wait(wait_for="all_replicas_ready").run(driver.connection())
        
        print_debug('Created table: %s.%s, will be %s' % (db_name, table_name, table_variable_name))
    
    globals()[table_variable_name] = r.db(db_name).table(table_name)
Example #2
0
def setup_table(table_variable_name, table_name, db_name='test'):
    global required_external_tables
    
    def _teardown_table(table_name, db_name):
        '''Used for tables that get created for this test'''
        res = r.db(db_name).table_drop(table_name).run(driver.connection())
        assert res["tables_dropped"] == 1, 'Failed to delete table %s.%s: %s' % (db_name, table_name, str(res))
    
    def _clean_table(table_name, db_name):
        '''Used for pre-existing tables'''
        res = r.db(db_name).table(table_name).delete().run(driver.connection())
        assert res["errors"] == 0, 'Failed to clean out contents from table %s.%s: %s' % (db_name, table_name, str(res))
        r.db(db_name).table(table_name).index_list().for_each(r.db(db_name).table(table_name).index_drop(r.row)).run(driver.connection())
    
    if len(required_external_tables) > 0:
        db_name, table_name = required_external_tables.pop()
        try:
            r.db(db_name).table(table_name).info(driver.connection())
        except r.ReqlRuntimeError:
            raise AssertionError('External table %s.%s did not exist' % (db_name, table_name))
        atexit.register(_clean_table, table_name=table_name, db_name=db_name)
        
        print('Using existing table: %s.%s, will be %s' % (db_name, table_name, table_variable_name))
    else:
        if table_name in r.db(db_name).table_list().run(driver.connection()):
            r.db(db_name).table_drop(table_name).run(driver.connection())
        res = r.db(db_name).table_create(table_name).run(driver.connection())
        assert res["tables_created"] == 1, 'Unable to create table %s.%s: %s' % (db_name, table_name, str(res))
        r.db(db_name).table(table_name).wait(wait_for="all_replicas_ready").run(driver.connection())
        
        print_debug('Created table: %s.%s, will be %s' % (db_name, table_name, table_variable_name))
    
    globals()[table_variable_name] = r.db(db_name).table(table_name)
Example #3
0
 def _clean_table(table_name, db_name):
     '''Used for pre-existing tables'''
     res = r.db(db_name).table(table_name).delete().run(driver.connection())
     assert res[
         "errors"] == 0, 'Failed to clean out contents from table %s.%s: %s' % (
             db_name, table_name, str(res))
     r.db(db_name).table(table_name).index_list().for_each(
         r.db(db_name).table(table_name).index_drop(r.row)).run(
             driver.connection())
Example #4
0
 def _teardown_table(table_name, db_name):
     '''Used for tables that get created for this test'''
     res = r.db(db_name).table_drop(table_name).run(driver.connection())
     assert res[
         "tables_dropped"] == 1, 'Failed to delete table %s.%s: %s' % (
             db_name, table_name, str(res))
Example #5
0
 def _clean_table(table_name, db_name):
     '''Used for pre-existing tables'''
     res = r.db(db_name).table(table_name).delete().run(driver.connection())
     assert res["errors"] == 0, 'Failed to clean out contents from table %s.%s: %s' % (db_name, table_name, str(res))
     r.db(db_name).table(table_name).index_list().for_each(r.db(db_name).table(table_name).index_drop(r.row)).run(driver.connection())
Example #6
0
 def _teardown_table(table_name, db_name):
     '''Used for tables that get created for this test'''
     res = r.db(db_name).table_drop(table_name).run(driver.connection())
     assert res["tables_dropped"] == 1, 'Failed to delete table %s.%s: %s' % (db_name, table_name, str(res))