diff options
Diffstat (limited to 'author/extract-inline-tests')
-rwxr-xr-x | author/extract-inline-tests | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/author/extract-inline-tests b/author/extract-inline-tests new file mode 100755 index 0000000..aa90787 --- /dev/null +++ b/author/extract-inline-tests @@ -0,0 +1,47 @@ +#!/usr/bin/perl + +use strict; +use warnings; + +use File::Find::Rule; +use Getopt::Long; +use Test::Inline; + +use lib 'inc'; +use MyInline; + +my $quiet; +GetOptions( 'quiet' => \$quiet ); + +my $inline = Test::Inline->new( + verbose => !$quiet, + ExtractHandler => 'My::Extract', + ContentHandler => 'My::Content', + OutputHandler => 'My::Output', +); + +for my $pod ( + File::Find::Rule->file->name(qr/\.pod$/)->in('lib/Moose/Cookbook') ) { + $inline->add($pod); +} + +$inline->save; + +{ + + package My::Output; + + use Path::Tiny; + + sub write { + my $class = shift; + my $name = shift; + my $content = shift; + + $name =~ s/^moose_cookbook_//; + + path( "t/recipes/$name" )->spew( $content ); + + return 1; + } +} |