##// END OF EJS Templates
Respect DB_IP and DB_PORT in mongodb tests....
Respect DB_IP and DB_PORT in mongodb tests. It is usually preferred to run tests on a test-local database with dedicated mongod instance rather than using the system-wide database. In order to support that, an easy way of providing the proper port is handy. For example, pymongo test suite uses DB_IP and DB_PORT environment variables to allow providing an alternate mongod instance. Using the same variable names in IPython's test suite seems a good idea.

File last commit:

r9539:b0f830ff
r9539:b0f830ff
Show More
test_mongodb.py
52 lines | 1.3 KiB | text/x-python | PythonLexer
"""Tests for mongodb backend
Authors:
* Min RK
"""
#-------------------------------------------------------------------------------
# Copyright (C) 2011 The IPython Development Team
#
# Distributed under the terms of the BSD License. The full license is in
# the file COPYING, distributed as part of this software.
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# Imports
#-------------------------------------------------------------------------------
import os
from unittest import TestCase
from nose import SkipTest
from pymongo import Connection
from IPython.parallel.controller.mongodb import MongoDB
from . import test_db
conn_kwargs = {}
if 'DB_IP' in os.environ:
conn_kwargs['host'] = os.environ['DB_IP']
if 'DB_PORT' in os.environ:
conn_kwargs['port'] = int(os.environ['DB_PORT'])
try:
c = Connection(**conn_kwargs)
except Exception:
c=None
class TestMongoBackend(test_db.TaskDBTest, TestCase):
"""MongoDB backend tests"""
def create_db(self):
try:
return MongoDB(database='iptestdb', _connection=c)
except Exception:
raise SkipTest("Couldn't connect to mongodb")
def teardown(self):
if c is not None:
c.drop_database('iptestdb')