1 package CPANPLUS::Module::Fake;
6 use CPANPLUS::Module::Author::Fake;
7 use CPANPLUS::Internals;
11 use Params::Check qw[check];
13 @ISA = qw[CPANPLUS::Module];
14 $Params::Check::VERBOSE = 1;
20 CPANPLUS::Module::Fake
24 my $obj = CPANPLUS::Module::Fake->new(
26 path => 'ftp/path/to/foo',
27 author => CPANPLUS::Module::Author::Fake->new,
28 package => 'fake-1.1.tgz',
34 A class for creating fake module objects, for shortcut use internally
37 Inherits from C<CPANPLUS::Module>.
41 =head2 new( module => $mod, path => $path, package => $pkg, [_id => DIGIT] )
43 Creates a dummy module object from the above parameters. It can
44 take more options (same as C<< CPANPLUS::Module->new >> but the above
53 local $Params::Check::ALLOW_UNKNOWN = 1;
56 module => { required => 1 },
57 path => { required => 1 },
58 package => { required => 1 },
59 _id => { default => CPANPLUS::Internals->_last_id },
60 author => { default => '' },
63 my $args = check( $tmpl, \%hash ) or return;
65 $args->{author} ||= CPANPLUS::Module::Author::Fake->new(
66 _id => $args->{_id} );
68 my $obj = CPANPLUS::Module->new( %$args ) or return;
71 error(loc("No '%1' specified -- No CPANPLUS object associated!",'_id'));
75 ### rebless object ###
76 return bless $obj, $class;
82 # c-indentation-style: bsd
84 # indent-tabs-mode: nil
86 # vim: expandtab shiftwidth=4: