Provided by: libdist-zilla-perl_6.010-1_all
NAME
Test::DZil - tools for testing Dist::Zilla plugins
VERSION
version 6.010
DESCRIPTION
Test::DZil provides routines for writing tests for Dist::Zilla plugins.
FUNCTIONS
Builder Minter my $tzil = Builder->from_config(...); These return class names that subclass Dist::Zilla::Dist::Builder or Dist::Zilla::Dist::Minter, respectively, with the Dist::Zilla::Tester behavior added. is_filelist is_filelist( \@files_we_have, \@files_we_want, $desc ); This test assertion compares two arrayrefs of filenames, taking care of slash normalization and sorting. @files_we_have may also contain objects that do Dist::Zilla::Role::File. is_yaml is_yaml( $yaml_string, $want_struct, $comment ); This test assertion deserializes the given YAML string and does a "cmp_deeply". is_json is_json( $json_string, $want_struct, $comment ); This test assertion deserializes the given JSON string and does a "cmp_deeply". dist_ini my $ini_text = dist_ini(\%root_config, @plugins); This routine returns a string that could be used to populate a simple dist.ini file. The %root_config gives data for the "root" section of the configuration. To provide a line multiple times, provide an arrayref. For example, the root section could read: { name => 'Dist-Sample', author => [ 'J. Smith <jsmith@example.com>', 'Q. Smith <qsmith@example.com>', ], } The root section is optional. Plugins can be given in a few ways: "PluginMoniker" "[ "PluginMoniker" ]" These become "[PluginMoniker]" "[ "PluginMoniker", "PluginName" ]" This becomes "[PluginMoniker / PluginName]" "[ "PluginMoniker", { ... } ]" "[ "PluginMoniker", "PluginName", { ... } ]" These use the given hashref as the parameters inside the section, with the same semantics as the root section. simple_ini This behaves exactly like "dist_ini", but it merges any given root config into a starter config, which means that you can often skip any explicit root config. The starter config may change slightly over time, but is something like this: { name => 'DZT-Sample', abstract => 'Sample DZ Dist', version => '0.001', author => 'E. Xavier Ample <example@example.org>', license => 'Perl_5', copyright_holder => 'E. Xavier Ample', }
AUTHOR
Ricardo SIGNES 😏 <rjbs@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2017 by Ricardo SIGNES. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.