summaryrefslogtreecommitdiff
path: root/buildscripts
diff options
context:
space:
mode:
authorRichard Kreuter <richard@10gen.com>2010-07-15 11:13:19 -0400
committerRichard Kreuter <richard@10gen.com>2010-07-15 11:13:19 -0400
commit5724e4aaf59254c6413fce6987bd4ad0c840cfb4 (patch)
treea86d9d90e1ac6fe561d22e15f7ce28a5d6d3fcf6 /buildscripts
parent476de4f3acdac178209369bd7663f3d783830fc7 (diff)
downloadmongo-5724e4aaf59254c6413fce6987bd4ad0c840cfb4.tar.gz
Improve smoke.py's --help output & add some notes for future improvement.
Diffstat (limited to 'buildscripts')
-rwxr-xr-xbuildscripts/smoke.py35
1 files changed, 33 insertions, 2 deletions
diff --git a/buildscripts/smoke.py b/buildscripts/smoke.py
index 3b20c87632c..3a1b6e23b23 100755
--- a/buildscripts/smoke.py
+++ b/buildscripts/smoke.py
@@ -1,5 +1,34 @@
#!/usr/bin/python
+# smoke.py: run some mongo tests.
+
+# Bugs, TODOs:
+
+# 0 Some tests hard-code pathnames relative to the mongo repository,
+# so the smoke.py process and all its children must be run with the
+# mongo repo as current working directory. That's kinda icky.
+
+# 1 The tests that are implemented as standalone executables ("test",
+# "perftest"), don't take arguments for the dbpath, but
+# unconditionally use "/tmp/unittest".
+
+# 2 mongod output gets intermingled with mongo output, and it's often
+# hard to find error messages in the slop. Maybe have smoke.py do
+# some fancier wrangling of child process output?
+
+# 3 Some test suites run their own mongods, and so don't need us to
+# run any mongods around their execution. (It's harmless to do so,
+# but adds noise in the output.)
+
+# 4 Running a separate mongo shell for each js file is slower than
+# loading js files into one mongo shell process. Maybe have runTest
+# queue up all filenames ending in ".js" and run them in one mongo
+# shell at the "end" of testing?
+
+# 5 Right now small-oplog implies master/slave replication. Maybe
+# running with replication should be an orthogonal concern. (And
+# maybe test replica set replication, too.)
+
from __future__ import with_statement
from subprocess import Popen, PIPE, call
import os
@@ -399,9 +428,11 @@ def main():
help='If supplied, run each test in a fresh mongod')
parser.add_option('--from-file', dest='File',
help="Run tests/suites named in FILE, one test per line, '-' means stdin")
- parser.add_option('--smoke-db-prefix', dest='smokeDbPrefix', default='')
+ parser.add_option('--smoke-db-prefix', dest='smokeDbPrefix', default='',
+ help="Prefix to use for the mongods' dbpaths.")
parser.add_option('--small-oplog', dest='smallOplog', default=False,
- action="store_true")
+ action="store_true",
+ help='Run tests with master/slave replication & use a small oplog')
global tests
(options, tests) = parser.parse_args()