tests: disable Ming test if Ming unavailable

And remove Ming from test-requires, as requested by infra/release team.

Fixes: bug#1158405

Change-Id: I83023ca865b54c5c94bf118122914c7e89e007c8
Signed-off-by: Julien Danjou <julien@danjou.info>
This commit is contained in:
Julien Danjou 2013-03-22 11:45:08 +01:00
parent 86ebece007
commit 7c21357f0a
13 changed files with 35 additions and 29 deletions

View File

@ -21,7 +21,12 @@ This driver is based on MIM, an in-memory version of MongoDB.
"""
import os
from ming import mim
import nose
try:
from ming import mim
except ImportError:
mim = None
from ceilometer.openstack.common import log as logging
@ -103,6 +108,22 @@ class TestConnection(impl_mongodb.Connection):
# MIM will die if we have too many connections, so use a
# Singleton
if TestConnection._mim_instance is None:
LOG.debug('Creating a new MIM Connection object')
TestConnection._mim_instance = mim.Connection()
if mim:
LOG.debug('Creating a new MIM Connection object')
TestConnection._mim_instance = mim.Connection()
else:
raise nose.SkipTest("Ming not found")
return TestConnection._mim_instance
def require_map_reduce(conn):
"""Raises SkipTest if the connection is using mim.
"""
# NOTE(dhellmann): mim requires spidermonkey to implement the
# map-reduce functions, so if we can't import it then just
# skip these tests unless we aren't using mim.
try:
import spidermonkey
except BaseException:
if isinstance(conn.conn, mim.Connection):
raise skip.SkipTest('requires spidermonkey')

View File

@ -20,7 +20,6 @@
"""Base classes for API tests."""
from ming import mim
from nose.plugins import skip
from oslo.config import cfg
@ -43,16 +42,3 @@ class TestBase(test_base.TestCase):
self.conn = storage.get_connection(cfg.CONF)
self.conn.upgrade()
self.conn.clear()
def require_map_reduce(conn):
"""Raises SkipTest if the connection is using mim.
"""
# NOTE(dhellmann): mim requires spidermonkey to implement the
# map-reduce functions, so if we can't import it then just
# skip these tests unless we aren't using mim.
try:
import spidermonkey
except BaseException:
if isinstance(conn.conn, mim.Connection):
raise skip.SkipTest('requires spidermonkey')

View File

@ -27,7 +27,7 @@ from ceilometer.collector import meter
from ceilometer import counter
from ceilometer.tests import api as tests_api
from ceilometer.tests.db import require_map_reduce
from ceilometer.storage.impl_test import require_map_reduce
class TestMaxProjectVolume(tests_api.TestBase):

View File

@ -26,7 +26,7 @@ from ceilometer.collector import meter
from ceilometer import counter
from ceilometer.tests import api as tests_api
from ceilometer.tests.db import require_map_reduce
from ceilometer.storage.impl_test import require_map_reduce
class TestMaxResourceVolume(tests_api.TestBase):

View File

@ -27,7 +27,7 @@ from ceilometer.collector import meter
from ceilometer import counter
from ceilometer.tests import api as tests_api
from ceilometer.tests.db import require_map_reduce
from ceilometer.storage.impl_test import require_map_reduce
class TestSumProjectVolume(tests_api.TestBase):

View File

@ -27,7 +27,7 @@ from ceilometer.collector import meter
from ceilometer import counter
from ceilometer.tests import api as tests_api
from ceilometer.tests.db import require_map_reduce
from ceilometer.storage.impl_test import require_map_reduce
class TestSumResourceVolume(tests_api.TestBase):

View File

@ -25,7 +25,7 @@ from oslo.config import cfg
from ceilometer.collector import meter
from ceilometer import counter
from ceilometer.tests.db import require_map_reduce
from ceilometer.storage.impl_test import require_map_reduce
from .base import FunctionalTest

View File

@ -26,7 +26,7 @@ from ceilometer.collector import meter
from ceilometer import counter
from .base import FunctionalTest
from ceilometer.tests.db import require_map_reduce
from ceilometer.storage.impl_test import require_map_reduce
class TestMaxResourceVolume(FunctionalTest):

View File

@ -26,7 +26,7 @@ from ceilometer.collector import meter
from ceilometer import counter
from .base import FunctionalTest
from ceilometer.tests.db import require_map_reduce
from ceilometer.storage.impl_test import require_map_reduce
class TestSumProjectVolume(FunctionalTest):

View File

@ -26,7 +26,7 @@ from ceilometer.collector import meter
from ceilometer import counter
from .base import FunctionalTest
from ceilometer.tests.db import require_map_reduce
from ceilometer.storage.impl_test import require_map_reduce
class TestSumResourceVolume(FunctionalTest):

View File

@ -54,8 +54,7 @@ from tests.storage import base
from ceilometer.collector import meter
from ceilometer import counter
from ceilometer.storage.impl_test import TestConnection
from ceilometer.tests.db import require_map_reduce
from ceilometer.storage.impl_test import TestConnection, require_map_reduce
class MongoDBEngine(base.DBEngineBase):

View File

@ -7,7 +7,7 @@ Babel>=0.9.6
# NOTE(dhellmann): Ming is necessary to provide the Mongo-in-memory
# implementation of MongoDB.
# NOTE(jd): the support for finalize in map reduce in MIM is not yet merged
git+http://git.naquadah.org/git/~jd/merciless.git#egg=Ming
# git+http://git.naquadah.org/git/~jd/merciless.git#egg=Ming
http://tarballs.openstack.org/nova/nova-master.tar.gz
http://tarballs.openstack.org/glance/glance-master.tar.gz
setuptools-git>=0.4

View File

@ -7,7 +7,7 @@ mox
# NOTE(dhellmann): Ming is necessary to provide the Mongo-in-memory
# implementation of MongoDB.
# NOTE(jd): the support for finalize in map reduce in MIM is not yet merged
git+http://git.naquadah.org/git/~jd/merciless.git#egg=Ming
# git+http://git.naquadah.org/git/~jd/merciless.git#egg=Ming
http://tarballs.openstack.org/glance/glance-stable-folsom.tar.gz
setuptools-git>=0.4
# 1.7.4 is the Folsom release