On Wed, Oct 14, 2009 at 4:43 AM, Steve Steiner (listsin) < list...@integrateddevcorp.com> wrote:
> > On Oct 14, 2009, at 2:07 AM, Glyph Lefkowitz wrote: > > Yes, we're working on it but it's a large code base and we started with > exactly zero tests. While that leaves infinite room for improvement, it's a > little overwhelming. Oh well, at least we know where to concentrate first > ;-0. > I realize it's a challenge, but, well, "Doctor, doctor, it hurts when I don't do this!". My immediate reaction is "go ahead and do it, then" :-). > Trial will helpfully fail tests which cause exceptions to be logged, so you > don't need to write any special extra test to make sure that nothing is > blowing up; just test your error-handling case, and if it blows up you will > see it. > > > We've just been using nose; is that something Trial handles specially for > Twisted? > Yes. > If you want to handle logged exceptions specially, for example to put them > in a separate file, or to e-mail them to somebody, consider writing a log > observer that checks for the isError key and does something special there. > You can find out more about writing log observers here: < > http://twistedmatrix.com/projects/core/documentation/howto/logging.html>. > > > This is an area of Twisted I haven't explored at all since the code's all > using the standard Python logging. > That's the thing about Twisted; sometimes it's hard to know whether the > stuff that has been built into standard Python since Twisted 'rolled their > own' is a superset, a subset, or a completely different beast. Logging is a > good case in point. Since we're using Python's logging everywhere, I wasn't > even sure whether there would be an advantage to learning Twisted's similar > system. Twisted's trial is another example; we've just been using nose. > Seems like there's always some little extra that makes the Twisted stuff > worth knowing. > Another option here would be to set up a PythonLoggingObserver that relay's Twisted's log messages to Python standard logging, then setup a standard log handler (another poster suggests nose already does this) to fail the test when appropriate. I'm fairly sure that the information you need is being properly relayed to the relevant parties, but if I'm wrong, it's a bug and probably a pretty easy one to fix :).
_______________________________________________ Twisted-Python mailing list Twisted-Python@twistedmatrix.com http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python