from brain.utils.general import get_yaml_loader from pgpasslib import getpass # Read in the db connection configuration dbconfigfile = 'dbconfig.ini' dbconfigfile = os.path.join(os.path.dirname(os.path.abspath(__file__)), dbconfigfile) try: with open(dbconfigfile, 'r') as ff: rawfile = ff.read() except IOError as e: raise RuntimeError('IOError: Could not open dbconfigfile {0}:{1}'.format( dbconfigfile, e)) dbdict = yaml.load(rawfile, Loader=get_yaml_loader()) # select the appropriate configuration from config if config.db: db_info = dbdict[config.db] try: if 'password' not in db_info: db_info['password'] = getpass(db_info['host'], db_info['port'], db_info['database'], db_info['user']) except KeyError: raise RuntimeError('ERROR: invalid server configuration') else: raise RuntimeError( 'Error: could not determine db to connect to: {0}'.format(config.db)) # this format is only usable with PostgreSQL 9.2+
from brain.utils.general import get_yaml_loader import pytest import yaml import os # @pytest.fixture() # def page(client, request, init_api): # blue, endpoint = request.param # page = ApiPage(client, 'api', endpoint) # yield page query_data = yaml.load(open( os.path.abspath( os.path.join(os.path.dirname(__file__), '../data/query_test_data.dat'))), Loader=get_yaml_loader()) @pytest.fixture() def params(release): return {'release': release} @pytest.fixture() def data(release): return query_data[release] def get_query_params(release, paramdisplay): q = Query(mode='local', release=release) if paramdisplay == 'best':
if template not in templates[release]: templates[release].append(template) return bintypes, templates bintypes, templates = populate_bintypes_templates(releases) # TODO reduce modes to only local and remote modes = ['local', 'remote', 'auto'] # to loop over modes (see mode fixture) dbs = ['db', 'nodb'] # to loop over dbs (see db fixture) origins = ['file', 'db', 'api'] # to loop over data origins (see data_origin fixture) # Galaxy and Query data is stored in a YAML file with open(os.path.join(os.path.dirname(__file__), 'data/galaxy_test_data.dat')) as f: galaxy_data = yaml.load(f, Loader=get_yaml_loader()) with open(os.path.join(os.path.dirname(__file__), 'data/query_test_data.dat')) as f: query_data = yaml.load(f, Loader=get_yaml_loader()) @pytest.fixture(scope='session', params=releases) def release(request): """Yield a release.""" if travis and request.param not in travis.new_releases: pytest.skip('Skipping non-requested release') return request.param def _get_release_generator_chain(): """Return all valid combinations of (release, bintype, template)."""
from __future__ import print_function, division, absolute_import from tests.api.conftest import ApiPage from marvin.tools.query import Query from marvin.utils.datamodel.query.base import bestparams from brain.utils.general import get_yaml_loader import pytest import yaml import os # @pytest.fixture() # def page(client, request, init_api): # blue, endpoint = request.param # page = ApiPage(client, 'api', endpoint) # yield page query_data = yaml.load(open(os.path.abspath(os.path.join(os.path.dirname(__file__), '../data/query_test_data.dat'))), Loader=get_yaml_loader()) @pytest.fixture() def params(release): return {'release': release} @pytest.fixture() def data(release): return query_data[release] def get_query_params(release, paramdisplay): q = Query(mode='local', release=release) if paramdisplay == 'best':