Duncan Booth wrote: > ... Possible enhancements: > add another argument for associated issue tracker id ... some unbroken tests > will also have associated issues this might just be a separate decorator.
This is probably easier to do as a separate decoration which would have to precede the "failing test" decoration: def tracker(identifier): def markup(function): function.tracker = identifier return function return markup > add some easyish way to generate a report of broken tests. Here's a generator for all the "marked broken" tests in a module: import types, unittest def marked_broken(module): for class_name in dir(module): class_ = getattr(module, class_name) if (isinstance(class_, (type, types.ClassType)) and issubclass(class_, unittest.TestCase)): for test_name in dir(class_): if test_name.startswith('test'): test = getattr(class_, test_name) if (hasattr(test, '__name__') and test.__name__.startswith('XXX_')): yield class_name, test_name, test.todo You could even use it like this: import sys import mytests for module_name, module in sys.modules.iteritems(): last_class = '' for class_name, test_name, reason in marked_broken(module): if module_name: print 'In module %s:' % module_name module_name = '' if last_class != class_name: print 'class', class_name last_class = class_name print ' %s\t %s' % (test_name, reason) Thanks for the thoughtful feedback. --Scott David Daniels [EMAIL PROTECTED] -- http://mail.python.org/mailman/listinfo/python-list