Auto-tools/Projects/Mozmill/Mozmill 2.0/EmbeddingAPI

Embedding mozmill should take a minimum of code and be simple to do. Ideally, something like:

# I want mozmill with all the defaults
import mozmill

# create a pluggable reporter
blah blah blah

# create a pluggable logger
blah blah blah

# reference a manifest file on the drive
m = mozmill(MyReporter, MyLogger, MyManifest)
m.run()

Currently, manifest creation/population is done outside of the MozMill class. I (=jhammel) am inclined to keep this pattern:

from mozmill import MozMill

manifest = ManifestParser(manifests=('mymanifest.ini',))

# ...

m = mozmill(runner, results, handlers=(MyReporter, MyLogger))
m.run(manifest.tests)