1 2use strict; 3use warnings; 4 5use Test::More tests => 10; 6 7my $mss = 'Method::Signatures::Simple'; 8use_ok $mss; 9my $inst = $mss->new(invocant => '$self'); 10 11my @tests = ( 12 ['' => [ qr'my \$self = shift;' ]], 13 ['$class: %opts' => [ qr'my \$class = shift;', qr'my \(\%opts\) = \@_;' ]], 14 ['@stuff' => [ qr'my \$self = shift;', qr'my \(\@stuff\) = \@_;' ]], 15 ['$foo, $bar' => [ qr'my \$self = shift;', qr'my \(\$foo, \$bar\) = \@_;' ]], 16 ["$/foo, $/bar$/" => [ qr'my \$self = shift;', qr'my \(foo,bar\) = \@_;' ]], 17); 18 19for my $t (@tests) { 20 my $p = $inst->parse_proto($t->[0]); 21 for my $match (@{$t->[1]}) { 22 like $p, $match; # , "$t->[0] matches $match"; 23 } 24} 25 26