def test_blocklist(): blocklist = '{"seanh.cc": {}, "twitter.com": {}, "finance.yahoo.com": {}' os.environ['BLOCKLIST'] = blocklist actual_config = settings_from_environment() assert actual_config == {'h.blocklist': blocklist}
def test_session_secret_environment(): # bw compat os.environ['SESSION_SECRET'] = 's3kr1t' actual_config = settings_from_environment() expected_config = { 'secret_key': 's3kr1t', } assert actual_config == expected_config
def test_mail_sender(): os.environ['MAIL_DEFAULT_SENDER'] = '*****@*****.**' actual_config = settings_from_environment() expected_config = { 'mail.default_sender': '*****@*****.**', } assert actual_config == expected_config
def test_heroku_database_postgres(): os.environ['DATABASE_URL'] = 'postgres://postgres:1234/database' actual_config = settings_from_environment() expected_config = { 'sqlalchemy.url': 'postgresql+psycopg2://postgres:1234/database' } assert actual_config == expected_config
def test_google_analytics(): os.environ['GOOGLE_ANALYTICS_TRACKING_ID'] = '12345-1' actual_config = settings_from_environment() expected_config = { 'ga_tracking_id': '12345-1', } assert actual_config == expected_config
def test_secret_key_environment(): os.environ['SECRET_KEY'] = 's3kr1t' actual_config = settings_from_environment() expected_config = { 'secret_key': 's3kr1t', } assert actual_config == expected_config
def test_nsq_namespace(): os.environ['NSQ_NAMESPACE'] = 'staging' actual_config = settings_from_environment() expected_config = { 'nsq.namespace': 'staging', } assert actual_config == expected_config
def get_config(args): settings = get_appsettings(args[0]) settings.update(config.settings_from_environment()) settings['basemodel.should_create_all'] = False settings['basemodel.should_drop_all'] = False settings['pyramid.includes'] = [] return dict(settings=settings)
def get_config(args): setup_logging(args[0]) settings = get_appsettings(args[0]) settings.update(config.settings_from_environment()) settings['basemodel.should_create_all'] = False settings['basemodel.should_drop_all'] = False settings['redis.sessions.secret'] = '' return dict(settings=settings)
def test_heroku_bonsai(): url = 'http://*****:*****@redwood-94865.us-east-1.bonsai.io/' os.environ['BONSAI_URL'] = url actual_config = settings_from_environment() expected_config = { 'es.host': url, } assert actual_config == expected_config
def test_heroku_redistogo(): url = 'redis://*****:*****@mummichog.redistogo.com:9128/' os.environ['REDISTOGO_URL'] = url actual_config = settings_from_environment() expected_config = { 'redis.sessions.url': url + '0', } assert actual_config == expected_config
def test_session_secret_environment(): os.environ['SESSION_SECRET'] = 's3kr1t' actual_config = settings_from_environment() expected_config = { 'session.secret': 's3kr1t', 'redis.sessions.secret': 's3kr1t', } assert actual_config == expected_config
def get_settings(**settings): """ Load settings from Pyramid startup into a dictionary :param settings: the settings dictionary to evaluate :return: a result """ result = {} result.update(settings) result.update(settings_from_environment()) return result
def test_client_credentials_environment(): os.environ['CLIENT_ID'] = 'annotate' os.environ['CLIENT_SECRET'] = 'unsecret' actual_config = settings_from_environment() expected_config = { 'h.client_id': 'annotate', 'h.client_secret': 'unsecret', } assert actual_config == expected_config
def test_mail_environment(): os.environ['MAIL_PORT'] = 'tcp://127.0.0.1:4567' os.environ['MAIL_PORT_25_TCP_ADDR'] = '127.0.0.1' os.environ['MAIL_PORT_25_TCP_PORT'] = '4567' actual_config = settings_from_environment() expected_config = { 'mail.host': '127.0.0.1', 'mail.port': '4567', } assert actual_config == expected_config
def get_settings(global_config, **settings): """ Return a paste settings objects extended as necessary with data from the environment. """ result = {} result.update(settings) result.update(settings_from_environment()) result.update(global_config) result.update(missing_secrets(result)) return result
def test_redis_database_environment(): os.environ['REDIS_PORT'] = 'tcp://127.0.0.1:4567' os.environ['REDIS_PORT_6379_TCP_ADDR'] = '127.0.0.1' os.environ['REDIS_PORT_6379_TCP_PORT'] = '4567' actual_config = settings_from_environment() expected_config = { 'redis.sessions.host': '127.0.0.1', 'redis.sessions.port': '4567', } assert actual_config == expected_config
def test_es_environment(): os.environ['ELASTICSEARCH_PORT'] = 'tcp://127.0.0.1:1234' os.environ['ELASTICSEARCH_PORT_9200_TCP_ADDR'] = '127.0.0.1' os.environ['ELASTICSEARCH_PORT_9200_TCP_PORT'] = '1234' os.environ['ELASTICSEARCH_INDEX'] = 'new-index' actual_config = settings_from_environment() expected_config = { 'es.host': 'http://127.0.0.1:1234', 'es.index': 'new-index', } assert actual_config == expected_config
def test_mail_mandrill(): os.environ['MANDRILL_USERNAME'] = '******' os.environ['MANDRILL_APIKEY'] = 'ace' actual_config = settings_from_environment() expected_config = { 'mail.username': '******', 'mail.password': '******', 'mail.host': 'smtp.mandrillapp.com', 'mail.port': 587, 'mail.tls': True, } assert actual_config == expected_config
def test_mail_mailgun(): os.environ['MAILGUN_SMTP_LOGIN'] = '******' os.environ['MAILGUN_SMTP_PASSWORD'] = '******' actual_config = settings_from_environment() expected_config = { 'mail.username': '******', 'mail.password': '******', 'mail.host': 'smtp.mailgun.org', 'mail.port': 587, 'mail.tls': True, } assert actual_config == expected_config
def test_mail_sendgrid(): os.environ['SENDGRID_USERNAME'] = '******' os.environ['SENDGRID_PASSWORD'] = '******' actual_config = settings_from_environment() expected_config = { 'mail.username': '******', 'mail.password': '******', 'mail.host': 'smtp.sendgrid.net', 'mail.port': 587, 'mail.tls': True, } assert actual_config == expected_config
def test_nsqd_environment(): os.environ['NSQD_PORT'] = 'tcp://127.0.0.1:4150' os.environ['NSQD_PORT_4150_TCP_ADDR'] = 'tcp.nsqd.local' os.environ['NSQD_PORT_4150_TCP_PORT'] = '4150' os.environ['NSQD_PORT_4151_TCP_ADDR'] = 'http.nsqd.local' os.environ['NSQD_PORT_4151_TCP_PORT'] = '4151' actual_config = settings_from_environment() expected_config = { 'nsq.reader.addresses': 'tcp.nsqd.local:4150', 'nsq.writer.address': 'http.nsqd.local:4151', } assert actual_config == expected_config
def get_settings(global_config, **settings): """ Return a paste settings objects extended as necessary with data from the environment. """ result = {} result.update(settings) result.update(settings_from_environment()) result.update(global_config) if 'secret_key' in result and not isinstance(result['secret_key'], bytes): result['secret_key'] = result['secret_key'].encode('utf-8') result.update(missing_secrets(result)) return result
def test_heroku_database_sqlite(): os.environ['DATABASE_URL'] = 'sqlite:///tmp/database.db' actual_config = settings_from_environment() expected_config = {'sqlalchemy.url': 'sqlite:///tmp/database.db'} assert actual_config == expected_config
def main(global_config, **settings): from h import config environ_config = config.settings_from_environment() settings.update(environ_config) # from environment variables settings.update(global_config) # from paste [DEFAULT] + command line return create_app(settings)