in reply to Change package name on the fly?

ok( Foo::Bar::­baz('wibbl­e') eq Old::Foo::­Bar::baz('­wibble'),'­baz +is compatible­');

I'd just write:

is( baz('wibble'), 'wibbled' );

And then run the test suite against both versions. A test failing against the old version of the module might mean that you have to fixchange the test (if you really mean "backward compatible" as in "bug-for-bug compatible").

- tye