App::Prove::Plugin::TestArgs - A prove plugin to configure test aliases and arguments
# t/config.yml --- t/foo.t: - alias: "Foo once" args: [foo, bar] - alias: "Foo twice" - alias: "Foo thrice" args: [baz] # command-line prove -PTestArgs=t/config.yml --verbose t/foo.t :: quux corge Foo once .... 1..1 # ['foo','bar'] ok 1 - t/foo.t ok Foo twice ... 1..1 # ['quux','corge'] ok 1 - t/foo.t ok Foo thrice .. 1..1 # ['baz'] ok 1 - t/foo.t ok All tests successful. Files=3, Tests=3, 0 wallclock secs ( 0.02 usr 0.01 sys + 0.07 cusr 0.02 csys = 0.12 CPU) Result: PASS
TAP::Harness is the default test harness of the prove command-line test driver program. The harness has a test_args object attribute that allows us to pass different arguments to test scripts. Furthermore the harness runtests() object method implementation allows us to run a test script multiple times giving each run a unique name (an alias). Unfortunately it seems to be impossible to control this functionality directly via the prove command-line interface.
prove
test_args
runtests()
alias
This plugin allows you to assign multiple alias-args pairs to a test script. Each pair triggers a separate run of the test script. The args part of a pair is optional. If it is missing, prove's own optional test script arguments passed at the command-line after an arisdottle (::) are used as a default.
args
::
For the time being the configuration has to be stored in a YAML file that is the only argument passed to this plugin.
Sven Willenbuecher, <sven.willenbuecher@gmx.de>
This software is copyright (c) 2024 by Sven Willenbuecher.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install App::Prove::Plugin::TestArgs, copy and paste the appropriate command in to your terminal.
cpanm
cpanm App::Prove::Plugin::TestArgs
CPAN shell
perl -MCPAN -e shell install App::Prove::Plugin::TestArgs
For more information on module installation, please visit the detailed CPAN module installation guide.