NAME
Test::TAPv13 - provide TAP v13 support to test scripts
SYNOPSIS
use Test::TAPv13 ':all'; # before other Test::* modules
use Test::More tests => 2;
my $data = { affe => { tiger => 111,
birne => "amazing",
loewe => [ qw( one two three) ],
},
zomtec => "here's another one",
};
ok(1, "hot stuff");
tap13_yaml($data);
tap13_pragma "+strict";
ok(1, "more hot stuff");
This would create TAP like this:
TAP version 13
1..2
ok 1 - hot stuff
---
affe:
birne: amazing
loewe:
- one
- two
- three
tiger: 111
zomtec: 'here''s another one'
...
pragma +strict
ok 2 - more hot stuff
tap13_yaml($data)
For example
tap13_yaml($data);
prints out an indented YAML block of the data, like this:
---
affe:
birne: amazing
kram:
- one
- two
- three
one: 111
zomtec: "here's another one"
...
To make it meaningful, e.g. in a TAP::DOM, you should do that directly after an actual test line to which this data block will belong as a child.
tap13_pragma($string)
For example
tap13_pragma("+strict");
prints out a TAP pragma line:
pragma +strict
You most probably do not want or need this, but anyway, the +strict
pragma is part of the TAP v13 specification and makes the TAP parser fail on non-TAP (unknown) lines.
tap13_version
Not to be called directly in your scripts as it is called implicitely as soon you use Test::TAP13
.
Prints out the version statement
TAP version 13
ABOUT
This module is to utilize TAP version 13 features in your test scripts.
TAP, the Test Anything Protocol, allows some new elements beginning with version 13. The most prominent one is to embed data as indented YAML blocks.
This module automatically declares TAP version 13
first in the TAP stream which is needed to tell the TAP::Parser to actually parse those new features. With some utility functions you can then actually include data, etc.
AUTHOR
Steffen Schwigon <ss5@renormalist.net>
COPYRIGHT AND LICENSE
This software is copyright (c) 2024 by Steffen Schwigon.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.