App::P...::HTML(3pm)

πŸ“¦
version 0.13 Β· 5 versions
, in debian trixie, ubuntu noble, ubuntu resolute, ubuntu stonking

πŸ’– App::Prove::Plugin::HTML β€” the prove plugin that makes pretty HTML, bestie πŸ’–

okay so this is App::Prove::Plugin::HTML, a perl module living in the User Contributed Perl Documentation section (that's your 3pm energy ✨). It's a plugin for prove that spits out HTML. Yes queen, your TAP gets a glow-up. πŸŽ€


✨ NAME ✨

App::Prove::Plugin::HTML β€” a prove plugin for HTML output. That's it, that's the whole vibe. πŸ¦‹


🌸 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!
⚠️ bestie. read the note. it is currently in alpha, and this usage will likely change. Do not build your whole personality on it. 😭

πŸ’… DESCRIPTION πŸ’…

So this is a quick & dirty second attempt at making TAP::Formatter::HTML easier to use from the command line. Second attempt!! The first one walked so this one could run. πŸƒβ™€οΈ

It will change once App::Prove has better support for plugins than needing to take cmdline data. iykyk.

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 β€” and this is the plot twist πŸ™ˆ β€” this is currently not possible with the way the App::Prove plugin system works.

So 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. Not a typo, not a glitch, that's just the deal. πŸ’€

πŸ“ 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. We love a module that does the typing for you. πŸ‘‘

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

And yes, you can pass 2 or more css_uri or js_uri args. Stack 'em. Collect 'em. It's giving hoarder but make it CSS. 🌈

😭 %ENV vars?! 😭

Briefly β€” because I know you're about to yell at me β€” 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. So here we are. 🫠

Yes, I know %ENV vars are a horrible way to do things. Truly rancid. If it bugs you too, then join the TAP::Harness devs and help us fix it ;-). Main character energy only, bestie. πŸ’œ


πŸ’€ BUGS πŸ’€

Please use http://rt.cpan.org to report any issues. Tell them everything. Spill the tea. 🍡


πŸ‘‘ AUTHOR πŸ‘‘

Steve Purkis <spurkis@cpan.org>


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

and that's the whole page, bestie!! 🫢 This little legend comes from perl v5.36.0, dated 2023-08-11, and it's filed under App::P...::HTML(3pm) in the User Contributed Perl Documentation. Go forth and make your TAP pretty. slay. πŸ’–βœ¨

πŸ“¦ where this page comes from