=head1 VERSION
-Version 1.14
+Version 1.17
=cut
-our $VERSION = '1.14';
+our $VERSION = '1.17';
=head1 DESCRIPTION
=cut
+use Test::Valgrind::Util;
+
use base qw<Test::Valgrind::Component Test::Valgrind::Carp>;
=head1 METHODS
my %args = @_;
if ($class eq __PACKAGE__) {
- my $action = delete $args{action} || 'Test';
- $action =~ s/[^\w:]//g;
- $action = __PACKAGE__ . "::$action" if $action !~ /::/;
- $class->_croak("Couldn't load action $action: $@")
- unless eval "require $action; 1";
+ my ($action, $msg) = Test::Valgrind::Util::validate_subclass(
+ $args{action} || 'Test',
+ );
+ $class->_croak($msg) unless defined $action;
return $action->new(%args);
}
=head1 COPYRIGHT & LICENSE
-Copyright 2009,2010,2011,2013 Vincent Pit, all rights reserved.
+Copyright 2009,2010,2011,2013,2015 Vincent Pit, all rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.