Skip to content

TestML and CPAN

Ingy döt Net edited this page Nov 14, 2018 · 3 revisions

Currently TestML is not on CPAN...

Actually that's not quite true. The old version of TestML was on CPAN, but now that has been renamed to TestML1. So if you were using (the old) TestML before (very unlikely) and need to keep using it, simply change over to TestML1. ie s/TestML/TestML1/g in your code.

And actually there is a TestML distribution on CPAN now. It is only there to point you to this Wiki Page.

This Wiki page is here to tell you that if you want to use the new TestML with Perl 5, you don't get it from CPAN; you install it from GitHub.

Will TestML eventually be on CPAN?

Probably in the future, when it has stabilized. TestML does not need to be on CPAN to use it successfully. It doesn't even need to be on CPAN to write CPAN modules that use it (see below).

TestML would only be put on CPAN as a convenience to Perl programmers.

How Can I Use TestML in my CPAN Modules

Since TestML is not on CPAN it seems impossible to use it for tests for CPAN modules. How would people run the tests?

Dist::Zilla::Plugin::TestMLIncluder is the secret. It precompiles your module's TestML tests and includes everything needed to run them into your dists. It even does Windows!

This implies that TestML is not a prerequisite of your module. How could it be? It's not on CPAN, remember?

See http://matrix.cpantesters.org/?dist=Pegex+0.70 for a current example of a CPAN module using lots of TestML tests and passing everywhere (384 PASS / 0 FAIL as I write this) on cpantesters.