0
0
mirror of https://github.com/mongodb/mongo.git synced 2024-11-28 16:24:56 +01:00
mongodb/buildscripts/resmokeconfig/suites/__init__.py
Max Hirschhorn 424314f65e SERVER-1424 Rewrite smoke.py.
Split out the passthrough tests into separate suites. The MongoDB
deployment is started up by resmoke.py so that we can record the
success/failure of each individual test in MCI.

Added support for parallel execution of tests by dispatching to
multiple MongoDB deployments.

Added support for grouping different kinds of tests (e.g. C++ unit
tests, dbtests, and jstests) so that they can be run together. This
allows for customizability in specifying what tests to execute when
changes are made to a particular part of the code.
2015-05-08 14:49:42 -04:00

37 lines
984 B
Python

"""
Defines a mapping of shortened names for suite configuration files to
their full path.
"""
from __future__ import absolute_import
import os
import os.path
def _get_named_suites():
"""
Explores this directory for any YAML configuration files.
Returns a mapping of basenames without the file extension to their
full path.
"""
dirname = os.path.dirname(__file__)
named_suites = {}
try:
(root, _dirs, files) = os.walk(dirname).next()
for filename in files:
(short_name, ext) = os.path.splitext(filename)
if ext in (".yml", ".yaml"):
pathname = os.path.join(root, filename)
named_suites[short_name] = os.path.relpath(pathname)
except StopIteration:
# 'dirname' does not exist, which should be impossible because it contains __file__.
raise IOError("Directory '%s' does not exist" % (dirname))
return named_suites
NAMED_SUITES = _get_named_suites()