David Wheeler wrote:
I don't see why not. I mean, AFAICT, the problem would be testing. And for that, I expect that it wouldn't be too hard to mock up Qpsmtpd for testing the plugins. No?
PAUSE requires a package name and a $VERSION, neither of which exist in any current plugins (although it is apparently possible to add them and have the plugin still function). There is the [minor] issue of having to sign up for a PAUSE account. I don't know if it is worth it for such small files (since we can already load them to the wiki).
As far as testing goes, I suppose someone could create a Qpsmtpd::Test class that would load/compile the plugin and then do simplified unit testing (basically see what hooks are registered and then feed them data and see what comes back). There would be a certain level of duplication involved (e.g. Qpsmtpd::Constants as a whole, bits of Qpsmtpd.pm, and at least some of Qpsmtpd::Plugins). The existing Test::Qpsmtpd framework isn't going to be usable because it relies on having the actual Qpsmtpd classes available.
John
