def import_long_live_sessions(schema_name, datasource_name=''): with DBConnection(name=datasource_name) as connector: user_session = connector.get_table('user_session') here = os.path.abspath(os.path.dirname(__file__)) resources_dir = os.path.join(os.path.join(here, 'resources')) with open(os.path.join(resources_dir, 'long_lived_sessions.csv')) as file_obj: # first row of the csv file is the header names reader = csv.DictReader(file_obj, delimiter=',') for row in reader: new_row = {} for field_name in row.keys(): # strip out spaces and \n clean_field_name = field_name.rstrip() new_row[clean_field_name] = row[field_name] # Inserts to the table one row at a time check_existing = connector.get_result( select([user_session.c.session_id], from_obj=[user_session ]).where(user_session.c.session_id == new_row['session_id'])) if len(check_existing) == 0: connector.execute(user_session.insert().values(**new_row)) else: connector.execute(user_session.update().values( session_context=new_row['session_context'], last_access=new_row['last_access'], expiration=new_row['expiration']).where( user_session.c.session_id == new_row['session_id']))
def select_from_table(self, table): with DBConnection( name=TestServicesTriggerAPI.datasource_name) as connector: dim_table = connector.get_table(table) query = select([dim_table]) results = connector.get_result(query) return results
def select_from_table(self, table): with DBConnection( name=DatabaseTestHelper.datasource_name) as connector: dim_table = connector.get_table(table) query = select([dim_table]) results = connector.get_result(query) return results
def verify_file_location_not_in_db(self, reg_id): with DBConnection(name='hpz') as connector: table = connector.get_table(self.reg_table) query = select([table.c.file_path ]).where(table.c.registration_id == reg_id) result = connector.execute(query).fetchall() self.assertEqual(result, [(None, )])
def check_db_for_upload(self, reg_id): with DBConnection(name='hpz') as connector: table = connector.get_table(self.reg_table) query = select([table.c.file_path ]).where(table.c.registration_id == reg_id) result = connector.execute(query).fetchall() self.assertNotEqual(result, [(None, )])
def select_pdf_cache_trigger_col_from_table(self, table, column_name): with DBConnection( name=TestServicesTriggerAPI.datasource_name) as connector: dim_table = connector.get_table(table) if column_name is "last_pre_cached": query = select( [dim_table.c.last_pre_cached.label('last_pre_cached')]) elif column_name is "last_pdf_task_requested": query = select([ dim_table.c.last_pdf_task_requested.label( 'last_pdf_task_requested') ]) return connector.get_result(query)
def set_data_stat_table(self, table, new_row): with DBConnection( name=TestServicesTriggerAPI.datasource_name) as connector: dim_table = connector.get_table(table) connector.execute(dim_table.insert().values(**new_row))
def delete_stat_table(self, table): with DBConnection( name=TestServicesTriggerAPI.datasource_name) as connector: table_name = connector.get_table(table) connector.execute(table_name.delete())
def get_tables(self): with DBConnection( name=TestServicesTriggerAPI.datasource_name) as connector: metadata = connector.get_metadata() return metadata.tables
def get_tables(self): with DBConnection( name=DatabaseTestHelper.datasource_name) as connector: metadata = connector.get_metadata() return metadata.tables
def verify_registration_not_in_db(self, reg_id): with DBConnection(name='hpz') as connector: table = connector.get_table(self.reg_table) query = select([table]).where(table.c.registration_id == reg_id) result = connector.execute(query).fetchall() self.assertFalse(result, 'Registration is stored in db')
def check_db_for_registration(self, reg_id): with DBConnection(name='hpz') as connector: table = connector.get_table(self.reg_table) query = select([table]).where(table.c.registration_id == reg_id) result = connector.execute(query).fetchall() self.assertTrue(result, 'Registration not stored in db')