Testing obsolete interfaces
Robert Collins
robertc at robertcollins.net
Wed May 10 08:37:09 BST 2006
On Tue, 2006-05-09 at 22:32 +0200, Jan Hudec wrote:
> On Tue, May 09, 2006 at 16:11:08 -0400, Aaron Bentley wrote:
> > Jan Hudec wrote:
> > > Hello,
> > >
> > > The test suite prints all deprecation warnings on the error output. But isn't
> > > it supposed to test deprecated interfaces as long as they are kept around?
> >
> > Whenever an interface becomes deprecated, none of the core code should
> > use it. Printing deprecation warnings during test runs is a good way to
> > catch that when it does happen.
> >
> > It's hard to distinguish between tests of deprecated functions and tests
> > of undeprecated functions that happen to call deprecated functions,
> > which means we're getting error output even for deprecations warnings we
> > expect.
> >
> > Perhaps we need a decorator to suppress expected deprecations warnings
> > for test cases that exercise deprecated interfaces.
>
> Another option, given the fact that the decorator always takes **kwargs,
> would be to implement a TEST=True extra parameter, that the decorator would
> remove and skip the warning if it's present... That way the tests of
> deprecated interfaces would be explicitly marked. Disadvantage of decorators
> is, that some testcases are quite long, so they may call some deprecated
> functions on purpose and others in error.
Heres a different perspective on this ... what about such a deprecated
function do we want to test ? The easiest way to ensure a deprecated
function is tested is to have it forward trivially to a supported
function. That function is presumably more generic/flexible and the
reason for the deprecated.
In the case where we are removing functionality completely - deprecating
something we're going to stop supporting, then I think there is a still
a strong argument for separating the deprecated api and the tested
functionality.
Rob
--
GPG key available at: <http://www.robertcollins.net/keys.txt>.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 191 bytes
Desc: This is a digitally signed message part
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20060510/fd2a3af2/attachment.pgp
More information about the bazaar
mailing list