App::Prove::Plugin::HTML(3)

NAME
App::Prove::Plugin::HTML - a prove plugin for HTML output

SYNOPSIS
 # command-line usage:
 prove -m -P HTML=outfile:out.html,css_uri:style.css,js_uri:foo.js,force_inline_css:0

 # NOTE: this is currently in alpha, this usage will likely change!

DESCRIPTION
This is a quick & dirty second attempt at making TAP::Formatter::HTML easier to use from the command line. It will change once App::Prove has better support for plugins than need to take cmdline data.

The original goal was to be able to specify all the args on the cmdline, ala:

  prove --html=output.html --css-uri foo.css --css-uri bar.css --force-inline-css 0

But this is currently not possible with the way the App::Prove plugin system works.

As a compromise, you must use the following syntax:

  prove -P HTML=arg1:val1,arg2:val2,...

Where argN is any TAP::Formatter::HTML parameter that is configurable via %ENV.

  Example
  prove -P HTML=outfile:out.html,css_uri:style.css,js_uri:foo.js,force_inline_css:0

This will cause prove to load this plugin, which loads TAP::Formatter::HTML for you, and sets formatter to "TAP::Formatter::HTML" to save you some typing.

To configure TAP::Formatter::HTML, the following %ENV vars are set:

  TAP_FORMATTER_HTML_OUTFILE=out.html
  TAP_FORMATTER_HTML_FORCE_INLINE_CSS=0
  TAP_FORMATTER_HTML_CSS_URIS=style.css
  TAP_FORMATTER_HTML_JS_URIS=func.js

Yes, you can pass 2 or more css_uri or js_uri args.

  %ENV vars?!
Briefly, App::Prove currently only lets you specify the "formatter_class" for TAP::Harness, it doesn't let you instantiate a formatter, or pass config to the formatter.

Yes, I know %ENV vars are a horrible way to do things. If it bugs you too, then join the TAP::Harness devs and help us fix it ;-).

BUGS
Please use http://rt.cpan.org to report any issues.

AUTHOR
Steve Purkis <spurkis@cpan.org>

COPYRIGHT
Copyright (c) 2008-2010 Steve Purkis <spurkis@cpan.org>, S Purkis Consulting Ltd. All rights reserved.

This module is released under the same terms as Perl itself.

SEE ALSO
prove, App::Prove, TAP::Formatter::HTML