[Twisted-Python] Get trial to use the docstring?
ltaylor.volks at gmail.com
Thu Aug 5 22:06:17 EDT 2010
On 8/5/10 6:25 PM, Nathan wrote:
> I have a number of questions:
> 1) I found the TreeReporter class that produces the default output
> (twisted/trial/reporter.py), and I found the file that seems to get
> run by trial (twisted/scripts/trial.py) but for the life of me I
> couldn't figure out how to get my own class to show up as one of the
> reporters that you can select by means of the --reporter=whatever
> argument. How do you tie the two together? I can just submit my
> modified TreeReporter, but it'd be nice to be able to also submit a
> wildly different option...
Wildly different options sound like a good case for plugins:
You need to create a plugin that makes your reporter accessible to
Trial. This means it needs to implement the IReporter interface:
The plugin should be installed on your PYTHONPATH in a directory named
twisted/plugins. You could just place this in your project for instance,
or in the system twisted/plugins dir.
The plugin describes the reporter (for --help-reporters) and provides
the importable module and class that gets instantiated.
The reporter itself can be a subclass of TreeReporter or whatever, and
should implement the IReporter interface.
Here is a simple example:
For a much better example, check out the Tahoe-LAFS project
> 2) What's the official process for submitting a patch (or where is the
> process documented)? I've never actually contributed code to
> 3) Every time I install my custom twisted (with "sudo python setup.py
> install" on OS X 10.6.4 system python), trial starts spitting out the
> "dropin cache" error (see  below) which persists until I run "sudo
> twistd --help" as was suggested on the list last week or so. Isn't
> there some way we can just address that error condition at
> installation time so that doesn't occur in the first place?
"Some way" always comes down to "Someone", which I suspect is a bit like
that ghost the kid from Family Circus is always blaming for muddy
footprints or whatever counts for domestic drama in Bil Keane's
So....there's an existing ticket you could help out with:
> 4) I'm sold on test-driven development (which is why I'm learning
> trial), so I'd like to both check for regressions and write a test for
> my patch. I found twisted/trial/test/test_reporter.py -- how do I run
> just the tests in that file? Does trial run on itself?
Trial is pretty flexible about specifying tests to run, so you can run
the whole suite, specify a directory of tests, or point it to a specific
The same holds for your own project:
More information about the Twisted-Python