[Jifty-commit] r3233 - in Template-Declare: inc/Module
inc/Module/Install lib/Template t
jifty-commit at lists.jifty.org
jifty-commit at lists.jifty.org
Sat May 12 01:25:53 EDT 2007
Author: jesse
Date: Sat May 12 01:25:52 2007
New Revision: 3233
Added:
Template-Declare/t/deep_importing.t
Modified:
Template-Declare/ (props changed)
Template-Declare/META.yml
Template-Declare/inc/Module/Install.pm
Template-Declare/inc/Module/Install/Base.pm
Template-Declare/inc/Module/Install/Can.pm
Template-Declare/inc/Module/Install/Fetch.pm
Template-Declare/inc/Module/Install/Makefile.pm
Template-Declare/inc/Module/Install/Metadata.pm
Template-Declare/inc/Module/Install/Win32.pm
Template-Declare/inc/Module/Install/WriteAll.pm
Template-Declare/lib/Template/Declare.pm
Template-Declare/t/deep_aliasing.t
Log:
r56805 at pinglin: jesse | 2007-05-12 01:25:45 -0400
deep import tests
Modified: Template-Declare/META.yml
==============================================================================
--- Template-Declare/META.yml (original)
+++ Template-Declare/META.yml Sat May 12 01:25:52 2007
@@ -1,3 +1,4 @@
+---
abstract: Perlish declarative templates
author: Jesse Vincent <jesse at bestpractical.com>
build_requires:
@@ -5,8 +6,11 @@
Test::More: 0
Test::Warn: 0
distribution_type: module
-generated_by: Module::Install version 0.64
+generated_by: Module::Install version 0.65
license: perl
+meta-spec:
+ url: http://module-build.sourceforge.net/META-spec-v1.3.html
+ version: 1.3
name: Template-Declare
no_index:
directory:
Modified: Template-Declare/inc/Module/Install.pm
==============================================================================
--- Template-Declare/inc/Module/Install.pm (original)
+++ Template-Declare/inc/Module/Install.pm Sat May 12 01:25:52 2007
@@ -28,7 +28,7 @@
# This is not enforced yet, but will be some time in the next few
# releases once we can make sure it won't clash with custom
# Module::Install extensions.
- $VERSION = '0.64';
+ $VERSION = '0.65';
}
# Whether or not inc::Module::Install is actually loaded, the
Modified: Template-Declare/inc/Module/Install/Base.pm
==============================================================================
--- Template-Declare/inc/Module/Install/Base.pm (original)
+++ Template-Declare/inc/Module/Install/Base.pm Sat May 12 01:25:52 2007
@@ -1,7 +1,7 @@
#line 1
package Module::Install::Base;
-$VERSION = '0.64';
+$VERSION = '0.65';
# Suspend handler for "redefined" warnings
BEGIN {
Modified: Template-Declare/inc/Module/Install/Can.pm
==============================================================================
--- Template-Declare/inc/Module/Install/Can.pm (original)
+++ Template-Declare/inc/Module/Install/Can.pm Sat May 12 01:25:52 2007
@@ -11,7 +11,7 @@
use vars qw{$VERSION $ISCORE @ISA};
BEGIN {
- $VERSION = '0.64';
+ $VERSION = '0.65';
$ISCORE = 1;
@ISA = qw{Module::Install::Base};
}
Modified: Template-Declare/inc/Module/Install/Fetch.pm
==============================================================================
--- Template-Declare/inc/Module/Install/Fetch.pm (original)
+++ Template-Declare/inc/Module/Install/Fetch.pm Sat May 12 01:25:52 2007
@@ -6,7 +6,7 @@
use vars qw{$VERSION $ISCORE @ISA};
BEGIN {
- $VERSION = '0.64';
+ $VERSION = '0.65';
$ISCORE = 1;
@ISA = qw{Module::Install::Base};
}
Modified: Template-Declare/inc/Module/Install/Makefile.pm
==============================================================================
--- Template-Declare/inc/Module/Install/Makefile.pm (original)
+++ Template-Declare/inc/Module/Install/Makefile.pm Sat May 12 01:25:52 2007
@@ -7,7 +7,7 @@
use vars qw{$VERSION $ISCORE @ISA};
BEGIN {
- $VERSION = '0.64';
+ $VERSION = '0.65';
$ISCORE = 1;
@ISA = qw{Module::Install::Base};
}
@@ -136,9 +136,13 @@
. "but we need version >= $perl_version";
}
+ $args->{INSTALLDIRS} = $self->installdirs;
+
my %args = map { ( $_ => $args->{$_} ) } grep {defined($args->{$_})} keys %$args;
- if ($self->admin->preop) {
- $args{dist} = $self->admin->preop;
+
+ my $user_preop = delete $args{dist}->{PREOP};
+ if (my $preop = $self->admin->preop($user_preop)) {
+ $args{dist} = $preop;
}
my $mm = ExtUtils::MakeMaker::WriteMakefile(%args);
@@ -205,4 +209,4 @@
__END__
-#line 334
+#line 338
Modified: Template-Declare/inc/Module/Install/Metadata.pm
==============================================================================
--- Template-Declare/inc/Module/Install/Metadata.pm (original)
+++ Template-Declare/inc/Module/Install/Metadata.pm Sat May 12 01:25:52 2007
@@ -6,14 +6,14 @@
use vars qw{$VERSION $ISCORE @ISA};
BEGIN {
- $VERSION = '0.64';
+ $VERSION = '0.65';
$ISCORE = 1;
@ISA = qw{Module::Install::Base};
}
my @scalar_keys = qw{
name module_name abstract author version license
- distribution_type perl_version tests
+ distribution_type perl_version tests installdirs
};
my @tuple_keys = qw{
@@ -56,6 +56,11 @@
};
}
+sub install_as_core { $_[0]->installdirs('perl') }
+sub install_as_cpan { $_[0]->installdirs('site') }
+sub install_as_site { $_[0]->installdirs('site') }
+sub install_as_vendor { $_[0]->installdirs('vendor') }
+
sub sign {
my $self = shift;
return $self->{'values'}{'sign'} if defined wantarray and !@_;
@@ -279,9 +284,11 @@
if (
$self->_slurp($file) =~ m/
- =head \d \s+
- (?:licen[cs]e|licensing|copyright|legal)\b
- (.*?)
+ (
+ =head \d \s+
+ (?:licen[cs]e|licensing|copyright|legal)\b
+ .*?
+ )
(=head\\d.*|=cut.*|)
\z
/ixms
@@ -298,6 +305,7 @@
'LGPL' => 'lgpl',
'BSD' => 'bsd',
'Artistic' => 'artistic',
+ 'MIT' => 'MIT',
);
while ( my ( $pattern, $license ) = splice( @phrases, 0, 2 ) ) {
$pattern =~ s{\s+}{\\s+}g;
Modified: Template-Declare/inc/Module/Install/Win32.pm
==============================================================================
--- Template-Declare/inc/Module/Install/Win32.pm (original)
+++ Template-Declare/inc/Module/Install/Win32.pm Sat May 12 01:25:52 2007
@@ -6,7 +6,7 @@
use vars qw{$VERSION $ISCORE @ISA};
BEGIN {
- $VERSION = '0.64';
+ $VERSION = '0.65';
$ISCORE = 1;
@ISA = qw{Module::Install::Base};
}
Modified: Template-Declare/inc/Module/Install/WriteAll.pm
==============================================================================
--- Template-Declare/inc/Module/Install/WriteAll.pm (original)
+++ Template-Declare/inc/Module/Install/WriteAll.pm Sat May 12 01:25:52 2007
@@ -6,7 +6,7 @@
use vars qw{$VERSION $ISCORE @ISA};
BEGIN {
- $VERSION = '0.64';
+ $VERSION = '0.65';
$ISCORE = 1;
@ISA = qw{Module::Install::Base};
}
Modified: Template-Declare/lib/Template/Declare.pm
==============================================================================
--- Template-Declare/lib/Template/Declare.pm (original)
+++ Template-Declare/lib/Template/Declare.pm Sat May 12 01:25:52 2007
@@ -215,18 +215,21 @@
=cut
sub alias {
- my $alias_into = caller(0);
- my $mixin = shift;
- my $prepend_path = shift;
+ my $alias_into = caller(0);
+ my $mixin = shift;
+ my $prepend_path = shift;
my $package_vars = shift;
-
$prepend_path =~ s|/+/|/|g;
$prepend_path =~ s|/$||;
- my $alias_key = $mixin . " ".$prepend_path;
- push @{$alias_into->aliases()}, $alias_key;
- $alias_into->alias_metadata()->{$alias_key} = { class=> $mixin, path => $prepend_path, package_vars => $package_vars };
+ my $alias_key = $mixin . " " . $prepend_path;
+ push @{ $alias_into->aliases() }, $alias_key;
+ $alias_into->alias_metadata()->{$alias_key} = {
+ class => $mixin,
+ path => $prepend_path,
+ package_vars => $package_vars
+ };
}
@@ -346,6 +349,9 @@
my $template_name = shift;
my $show_private = shift || 0;
+
+ warn "$self -> resolve_template $template_name";
+
foreach my $package ( reverse @{ Template::Declare->roots } ) {
unless ($package and $package->isa('Template::Declare')) {
warn "'@{[$package||'']} was listed as a Template::Declare root, but is not a Template::Declare subclass";
@@ -364,13 +370,16 @@
$template_name = "/$template_name";
+ #warn "$self -> resolve_template checking alias $alias_key for $template_name";
if ( $template_name =~ m{$alias_prefix/(.*)$} ) {
my $dispatch_to_template = $1;
- if (my $coderef = $alias_class->has_template( $dispatch_to_template, $show_private)) {
+ if (my $coderef = $alias_class->has_template(
+ $dispatch_to_template, $show_private)) {
+
# We're going to force $self to the aliased class
- return sub {
- no strict 'refs';
-
+ return sub {
+ no strict 'refs';
+
local $TEMPLATE_VARS->{$alias_class} = $package_vars;
&$coderef($alias_class);
};
Modified: Template-Declare/t/deep_aliasing.t
==============================================================================
--- Template-Declare/t/deep_aliasing.t (original)
+++ Template-Declare/t/deep_aliasing.t Sat May 12 01:25:52 2007
@@ -2,25 +2,25 @@
use strict;
-package Plugin2::View;
+package SearchPlugin::View;
use base qw/Template::Declare/;
use Template::Declare::Tags;
template 'search' => sub {
- h1 {'Plugin2::View::search'};
+ h1 {'SearchPlugin::View::search'};
};
-package Plugin1::View;
+package ListPlugin::View;
use base qw/Template::Declare/;
use Template::Declare::Tags;
template 'listing' => sub {
- h1 {'Plugin1::View::listing'};
+ h1 {'ListPlugin::View::listing'};
};
-alias Plugin2::View under '/';
+alias SearchPlugin::View under '/';
package MyApp::View;
@@ -30,7 +30,7 @@
template 'toplevel' => sub {h1{'Toplevel'}};
-alias Plugin1::View under '/plugin';
+alias ListPlugin::View under '/plugin';
package main;
Template::Declare->init( roots => ['MyApp::View'] );
@@ -57,14 +57,17 @@
unlike( $simple, qr'listing' , 'can not call a toplevel "listing" template');
}
{
- my $simple = ( Template::Declare->show('/plugin/listing'));
- like( $simple, qr'listing', "Can call /plugin/listing" );
-}
-{
my $simple = ( Template::Declare->show('search'));
unlike( $simple, qr'search', "Can not call a toplevel /search" );
}
{
+
+ warn "Trying to show /plugin/listing";
+ my $simple = ( Template::Declare->show('/plugin/listing'));
+ like( $simple, qr'listing', "Can call /plugin/listing" );
+}
+{
+ warn "Trying to show /plugin/search";
my $simple = ( Template::Declare->show('/plugin/search'));
like( $simple, qr'search' , "Can call /plugin/search");
}
Added: Template-Declare/t/deep_importing.t
==============================================================================
--- (empty file)
+++ Template-Declare/t/deep_importing.t Sat May 12 01:25:52 2007
@@ -0,0 +1,73 @@
+use warnings;
+use strict;
+
+
+package Plugin2::View;
+
+use base qw/Template::Declare/;
+use Template::Declare::Tags;
+
+template 'search' => sub {
+ h1 {'Plugin2::View::search'};
+};
+
+package Plugin1::View;
+
+use base qw/Template::Declare/;
+use Template::Declare::Tags;
+
+template 'listing' => sub {
+ h1 {'Plugin1::View::listing'};
+};
+
+import_templates Plugin2::View under '/';
+
+
+package MyApp::View;
+
+use base qw/Template::Declare/;
+use Template::Declare::Tags;
+
+template 'toplevel' => sub {h1{'Toplevel'}};
+
+import_templates Plugin1::View under '/plugin';
+
+package main;
+Template::Declare->init( roots => ['MyApp::View'] );
+
+use Test::More tests => 16;
+require "t/utils.pl";
+
+ok( MyApp::View->has_template('toplevel') );
+ok( !MyApp::View->has_template('listing') );
+ok( !MyApp::View->has_template('search') );
+ok( MyApp::View->has_template('/plugin/listing'), 'has listing template' );
+ok( MyApp::View->has_template('/plugin/search'), 'has search template' );
+
+
+
+
+
+{
+ my $simple = ( Template::Declare->show('toplevel'));
+ like( $simple, qr'Toplevel' );
+}
+{
+ my $simple = ( Template::Declare->show('listing'));
+ unlike( $simple, qr'listing' , 'can not call a toplevel "listing" template');
+}
+{
+ my $simple = ( Template::Declare->show('/plugin/listing'));
+ like( $simple, qr'listing', "Can call /plugin/listing" );
+}
+{
+ my $simple = ( Template::Declare->show('search'));
+ unlike( $simple, qr'search', "Can not call a toplevel /search" );
+}
+{
+ my $simple = ( Template::Declare->show('/plugin/search'));
+ like( $simple, qr'search' , "Can call /plugin/search");
+}
+
+
+1;
More information about the Jifty-commit
mailing list