r64632 - in /branches/upstream/libmoosex-setonce-perl/current: Changes MANIFEST META.json META.yml Makefile.PL README lib/MooseX/SetOnce.pm t/release-pod-coverage.t t/release-pod-syntax.t t/setonce.t t/worm.t

ansgar at users.alioth.debian.org ansgar at users.alioth.debian.org
Sat Nov 6 17:17:58 UTC 2010


Author: ansgar
Date: Sat Nov  6 17:16:29 2010
New Revision: 64632

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=64632
Log:
[svn-upgrade] new version libmoosex-setonce-perl (0.100472)

Added:
    branches/upstream/libmoosex-setonce-perl/current/t/setonce.t
Removed:
    branches/upstream/libmoosex-setonce-perl/current/t/release-pod-coverage.t
    branches/upstream/libmoosex-setonce-perl/current/t/worm.t
Modified:
    branches/upstream/libmoosex-setonce-perl/current/Changes
    branches/upstream/libmoosex-setonce-perl/current/MANIFEST
    branches/upstream/libmoosex-setonce-perl/current/META.json
    branches/upstream/libmoosex-setonce-perl/current/META.yml
    branches/upstream/libmoosex-setonce-perl/current/Makefile.PL
    branches/upstream/libmoosex-setonce-perl/current/README
    branches/upstream/libmoosex-setonce-perl/current/lib/MooseX/SetOnce.pm
    branches/upstream/libmoosex-setonce-perl/current/t/release-pod-syntax.t

Modified: branches/upstream/libmoosex-setonce-perl/current/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libmoosex-setonce-perl/current/Changes?rev=64632&op=diff
==============================================================================
--- branches/upstream/libmoosex-setonce-perl/current/Changes (original)
+++ branches/upstream/libmoosex-setonce-perl/current/Changes Sat Nov  6 17:16:29 2010
@@ -1,4 +1,7 @@
 Revision history for MooseX-SetOnce
+
+0.100472  2010-11-03 16:14:19 America/New_York
+          include attribute name in error message
 
 0.100471  2010-02-16 13:30:57 America/New_York
           correct dist name (oops!  thanks for noticing, mst)

Modified: branches/upstream/libmoosex-setonce-perl/current/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libmoosex-setonce-perl/current/MANIFEST?rev=64632&op=diff
==============================================================================
--- branches/upstream/libmoosex-setonce-perl/current/MANIFEST (original)
+++ branches/upstream/libmoosex-setonce-perl/current/MANIFEST Sat Nov  6 17:16:29 2010
@@ -7,6 +7,5 @@
 README
 dist.ini
 lib/MooseX/SetOnce.pm
-t/release-pod-coverage.t
 t/release-pod-syntax.t
-t/worm.t
+t/setonce.t

Modified: branches/upstream/libmoosex-setonce-perl/current/META.json
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libmoosex-setonce-perl/current/META.json?rev=64632&op=diff
==============================================================================
--- branches/upstream/libmoosex-setonce-perl/current/META.json (original)
+++ branches/upstream/libmoosex-setonce-perl/current/META.json Sat Nov  6 17:16:29 2010
@@ -1,25 +1,221 @@
 {
-   "resources" : {
-      "repository" : "git://git.codesimply.com/MooseX-SetOnce.git"
-   },
-   "generated_by" : "Dist::Zilla version 1.100160",
-   "meta-spec" : {
-      "version" : 1.4,
-      "url" : "http://module-build.sourceforge.net/META-spec-v1.4.html"
-   },
-   "version" : "0.100471",
-   "name" : "MooseX-SetOnce",
+   "abstract" : "write-once, read-many attributes for Moose",
    "author" : [
       "Ricardo SIGNES <rjbs at cpan.org>"
    ],
-   "license" : "perl",
-   "requires" : {
-      "Moose::Role" : "0.90",
-      "Test::More" : 0,
-      "Try::Tiny" : 0,
-      "ExtUtils::MakeMaker" : "6.11",
-      "Moose" : 0
+   "dynamic_config" : 0,
+   "generated_by" : "Dist::Zilla version 4.102342, CPAN::Meta::Converter version 2.102400",
+   "license" : [
+      "perl_5"
+   ],
+   "meta-spec" : {
+      "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
+      "version" : "2"
    },
-   "abstract" : "write-once, read-many attributes for Moose"
+   "name" : "MooseX-SetOnce",
+   "prereqs" : {
+      "configure" : {
+         "requires" : {
+            "ExtUtils::MakeMaker" : "6.31"
+         }
+      },
+      "runtime" : {
+         "requires" : {
+            "Moose::Role" : "0.90"
+         }
+      },
+      "test" : {
+         "requires" : {
+            "Moose" : 0,
+            "Test::Fatal" : 0,
+            "Test::More" : "0.96"
+         }
+      }
+   },
+   "release_status" : "stable",
+   "resources" : {
+      "repository" : {
+         "type" : "git",
+         "url" : "git://git.codesimply.com/MooseX-SetOnce.git"
+      }
+   },
+   "version" : "0.100472",
+   "x_Dist_Zilla" : {
+      "plugins" : [
+         {
+            "class" : "Dist::Zilla::Plugin::GatherDir",
+            "name" : "@RJBS/@Basic/GatherDir",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::PruneCruft",
+            "name" : "@RJBS/@Basic/PruneCruft",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::ManifestSkip",
+            "name" : "@RJBS/@Basic/ManifestSkip",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::MetaYAML",
+            "name" : "@RJBS/@Basic/MetaYAML",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::License",
+            "name" : "@RJBS/@Basic/License",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::Readme",
+            "name" : "@RJBS/@Basic/Readme",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::ExtraTests",
+            "name" : "@RJBS/@Basic/ExtraTests",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::ExecDir",
+            "name" : "@RJBS/@Basic/ExecDir",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::ShareDir",
+            "name" : "@RJBS/@Basic/ShareDir",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::MakeMaker",
+            "name" : "@RJBS/@Basic/MakeMaker",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::Manifest",
+            "name" : "@RJBS/@Basic/Manifest",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::TestRelease",
+            "name" : "@RJBS/@Basic/TestRelease",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::ConfirmRelease",
+            "name" : "@RJBS/@Basic/ConfirmRelease",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::UploadToCPAN",
+            "name" : "@RJBS/@Basic/UploadToCPAN",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::AutoPrereqs",
+            "name" : "@RJBS/AutoPrereqs",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::Git::NextVersion",
+            "name" : "@RJBS/Git::NextVersion",
+            "version" : "1.102810"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::PkgVersion",
+            "name" : "@RJBS/PkgVersion",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::MetaConfig",
+            "name" : "@RJBS/MetaConfig",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::MetaJSON",
+            "name" : "@RJBS/MetaJSON",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::NextRelease",
+            "name" : "@RJBS/NextRelease",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::PodSyntaxTests",
+            "name" : "@RJBS/PodSyntaxTests",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::Repository",
+            "name" : "@RJBS/Repository",
+            "version" : "0.14"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::Prereqs",
+            "config" : {
+               "Dist::Zilla::Plugin::Prereqs" : {
+                  "phase" : "test",
+                  "type" : "requires"
+               }
+            },
+            "name" : "@RJBS/TestMoreWithSubtests",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::PodWeaver",
+            "name" : "@RJBS/PodWeaver",
+            "version" : "3.101641"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::Git::Check",
+            "name" : "@RJBS/@Git/Check",
+            "version" : "1.102810"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::Git::Commit",
+            "name" : "@RJBS/@Git/Commit",
+            "version" : "1.102810"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::Git::Tag",
+            "name" : "@RJBS/@Git/Tag",
+            "version" : "1.102810"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::Git::Push",
+            "name" : "@RJBS/@Git/Push",
+            "version" : "1.102810"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::FinderCode",
+            "name" : ":InstallModules",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::FinderCode",
+            "name" : ":TestFiles",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::FinderCode",
+            "name" : ":ExecFiles",
+            "version" : "4.102342"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::FinderCode",
+            "name" : ":ShareFiles",
+            "version" : "4.102342"
+         }
+      ],
+      "zilla" : {
+         "class" : "Dist::Zilla::Dist::Builder",
+         "config" : {
+            "is_trial" : 0
+         },
+         "version" : "4.102342"
+      }
+   }
 }
 

Modified: branches/upstream/libmoosex-setonce-perl/current/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libmoosex-setonce-perl/current/META.yml?rev=64632&op=diff
==============================================================================
--- branches/upstream/libmoosex-setonce-perl/current/META.yml (original)
+++ branches/upstream/libmoosex-setonce-perl/current/META.yml Sat Nov  6 17:16:29 2010
@@ -2,18 +2,160 @@
 abstract: 'write-once, read-many attributes for Moose'
 author:
   - 'Ricardo SIGNES <rjbs at cpan.org>'
-generated_by: 'Dist::Zilla version 1.100160'
+build_requires:
+  Moose: 0
+  Test::Fatal: 0
+  Test::More: 0.96
+configure_requires:
+  ExtUtils::MakeMaker: 6.31
+dynamic_config: 0
+generated_by: 'Dist::Zilla version 4.102342, CPAN::Meta::Converter version 2.102400'
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
   version: 1.4
 name: MooseX-SetOnce
 requires:
-  ExtUtils::MakeMaker: 6.11
-  Moose: 0
   Moose::Role: 0.90
-  Test::More: 0
-  Try::Tiny: 0
 resources:
   repository: git://git.codesimply.com/MooseX-SetOnce.git
-version: 0.100471
+version: 0.100472
+x_Dist_Zilla:
+  plugins:
+    -
+      class: Dist::Zilla::Plugin::GatherDir
+      name: '@RJBS/@Basic/GatherDir'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::PruneCruft
+      name: '@RJBS/@Basic/PruneCruft'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::ManifestSkip
+      name: '@RJBS/@Basic/ManifestSkip'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::MetaYAML
+      name: '@RJBS/@Basic/MetaYAML'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::License
+      name: '@RJBS/@Basic/License'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::Readme
+      name: '@RJBS/@Basic/Readme'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::ExtraTests
+      name: '@RJBS/@Basic/ExtraTests'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::ExecDir
+      name: '@RJBS/@Basic/ExecDir'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::ShareDir
+      name: '@RJBS/@Basic/ShareDir'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::MakeMaker
+      name: '@RJBS/@Basic/MakeMaker'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::Manifest
+      name: '@RJBS/@Basic/Manifest'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::TestRelease
+      name: '@RJBS/@Basic/TestRelease'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::ConfirmRelease
+      name: '@RJBS/@Basic/ConfirmRelease'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::UploadToCPAN
+      name: '@RJBS/@Basic/UploadToCPAN'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::AutoPrereqs
+      name: '@RJBS/AutoPrereqs'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::Git::NextVersion
+      name: '@RJBS/Git::NextVersion'
+      version: 1.102810
+    -
+      class: Dist::Zilla::Plugin::PkgVersion
+      name: '@RJBS/PkgVersion'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::MetaConfig
+      name: '@RJBS/MetaConfig'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::MetaJSON
+      name: '@RJBS/MetaJSON'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::NextRelease
+      name: '@RJBS/NextRelease'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::PodSyntaxTests
+      name: '@RJBS/PodSyntaxTests'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::Repository
+      name: '@RJBS/Repository'
+      version: 0.14
+    -
+      class: Dist::Zilla::Plugin::Prereqs
+      config:
+        Dist::Zilla::Plugin::Prereqs:
+          phase: test
+          type: requires
+      name: '@RJBS/TestMoreWithSubtests'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::PodWeaver
+      name: '@RJBS/PodWeaver'
+      version: 3.101641
+    -
+      class: Dist::Zilla::Plugin::Git::Check
+      name: '@RJBS/@Git/Check'
+      version: 1.102810
+    -
+      class: Dist::Zilla::Plugin::Git::Commit
+      name: '@RJBS/@Git/Commit'
+      version: 1.102810
+    -
+      class: Dist::Zilla::Plugin::Git::Tag
+      name: '@RJBS/@Git/Tag'
+      version: 1.102810
+    -
+      class: Dist::Zilla::Plugin::Git::Push
+      name: '@RJBS/@Git/Push'
+      version: 1.102810
+    -
+      class: Dist::Zilla::Plugin::FinderCode
+      name: ':InstallModules'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::FinderCode
+      name: ':TestFiles'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::FinderCode
+      name: ':ExecFiles'
+      version: 4.102342
+    -
+      class: Dist::Zilla::Plugin::FinderCode
+      name: ':ShareFiles'
+      version: 4.102342
+  zilla:
+    class: Dist::Zilla::Dist::Builder
+    config:
+      is_trial: 0
+    version: 4.102342

Modified: branches/upstream/libmoosex-setonce-perl/current/Makefile.PL
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libmoosex-setonce-perl/current/Makefile.PL?rev=64632&op=diff
==============================================================================
--- branches/upstream/libmoosex-setonce-perl/current/Makefile.PL (original)
+++ branches/upstream/libmoosex-setonce-perl/current/Makefile.PL Sat Nov  6 17:16:29 2010
@@ -4,33 +4,50 @@
 
 
 
-use ExtUtils::MakeMaker 6.11;
+use ExtUtils::MakeMaker 6.31;
 
 
 
 my %WriteMakefileArgs = (
-                       'test' => {
-                                   'TESTS' => 't/*.t'
-                                 },
-                       'NAME' => 'MooseX::SetOnce',
-                       'DISTNAME' => 'MooseX-SetOnce',
-                       'AUTHOR' => 'Ricardo SIGNES <rjbs at cpan.org>',
-                       'ABSTRACT' => 'write-once, read-many attributes for Moose',
-                       'EXE_FILES' => [],
-                       'VERSION' => '0.100471',
-                       'LICENSE' => 'perl',
-                       'PREREQ_PM' => {
-                                        'Try::Tiny' => 0,
-                                        'Test::More' => 0,
-                                        'Moose::Role' => '0.90',
-                                        'ExtUtils::MakeMaker' => '6.11',
-                                        'Moose' => 0
-                                      }
-                     );
+  'ABSTRACT' => 'write-once, read-many attributes for Moose',
+  'AUTHOR' => 'Ricardo SIGNES <rjbs at cpan.org>',
+  'BUILD_REQUIRES' => {
+    'Moose' => '0',
+    'Test::Fatal' => '0',
+    'Test::More' => '0.96'
+  },
+  'CONFIGURE_REQUIRES' => {
+    'ExtUtils::MakeMaker' => '6.31'
+  },
+  'DISTNAME' => 'MooseX-SetOnce',
+  'EXE_FILES' => [],
+  'LICENSE' => 'perl',
+  'NAME' => 'MooseX::SetOnce',
+  'PREREQ_PM' => {
+    'Moose::Role' => '0.90'
+  },
+  'VERSION' => '0.100472',
+  'test' => {
+    'TESTS' => 't/*.t'
+  }
+);
 
 
-delete $WriteMakefileArgs{LICENSE}
-  unless eval { ExtUtils::MakeMaker->VERSION(6.31) };
+unless ( eval { ExtUtils::MakeMaker->VERSION(6.56) } ) {
+  my $br = delete $WriteMakefileArgs{BUILD_REQUIRES};
+  my $pp = $WriteMakefileArgs{PREREQ_PM};
+  for my $mod ( keys %$br ) {
+    if ( exists $pp->{$mod} ) {
+      $pp->{$mod} = $br->{$mod} if $br->{$mod} > $pp->{$mod};
+    }
+    else {
+      $pp->{$mod} = $br->{$mod};
+    }
+  }
+}
+
+delete $WriteMakefileArgs{CONFIGURE_REQUIRES}
+  unless eval { ExtUtils::MakeMaker->VERSION(6.52) };
 
 WriteMakefile(%WriteMakefileArgs);
 

Modified: branches/upstream/libmoosex-setonce-perl/current/README
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libmoosex-setonce-perl/current/README?rev=64632&op=diff
==============================================================================
--- branches/upstream/libmoosex-setonce-perl/current/README (original)
+++ branches/upstream/libmoosex-setonce-perl/current/README Sat Nov  6 17:16:29 2010
@@ -1,7 +1,7 @@
 
 
-This archive contains the distribution MooseX-SetOnce, version
-0.100471:
+This archive contains the distribution MooseX-SetOnce,
+version 0.100472:
 
   write-once, read-many attributes for Moose
 
@@ -10,3 +10,4 @@
 This is free software; you can redistribute it and/or modify it under
 the same terms as the Perl 5 programming language system itself.
 
+

Modified: branches/upstream/libmoosex-setonce-perl/current/lib/MooseX/SetOnce.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libmoosex-setonce-perl/current/lib/MooseX/SetOnce.pm?rev=64632&op=diff
==============================================================================
--- branches/upstream/libmoosex-setonce-perl/current/lib/MooseX/SetOnce.pm (original)
+++ branches/upstream/libmoosex-setonce-perl/current/lib/MooseX/SetOnce.pm Sat Nov  6 17:16:29 2010
@@ -1,19 +1,23 @@
 use strict;
 use warnings;
 package MooseX::SetOnce;
-our $VERSION = '0.100471';
+BEGIN {
+  $MooseX::SetOnce::VERSION = '0.100472';
+}
 # ABSTRACT: write-once, read-many attributes for Moose
 
 
 package MooseX::SetOnce::Attribute;
-our $VERSION = '0.100471';
+BEGIN {
+  $MooseX::SetOnce::Attribute::VERSION = '0.100472';
+}
 use Moose::Role 0.90;
 
 before set_value => sub { $_[0]->_ensure_unset($_[1]) };
 
 sub _ensure_unset {
   my ($self, $instance) = @_;
-  Carp::confess("cannot change value of SetOnce attribute")
+  Carp::confess("cannot change value of SetOnce attribute " . $self->name)
     if $self->has_value($instance);
 }
 
@@ -28,7 +32,9 @@
 };
 
 package MooseX::SetOnce::Accessor;
-our $VERSION = '0.100471';
+BEGIN {
+  $MooseX::SetOnce::Accessor::VERSION = '0.100472';
+}
 use Moose::Role 0.90;
 
 around _inline_store => sub {
@@ -45,7 +51,9 @@
 };
 
 package Moose::Meta::Attribute::Custom::Trait::SetOnce;
-our $VERSION = '0.100471';
+BEGIN {
+  $Moose::Meta::Attribute::Custom::Trait::SetOnce::VERSION = '0.100472';
+}
 sub register_implementation { 'MooseX::SetOnce::Attribute' }
 
 1;
@@ -59,7 +67,7 @@
 
 =head1 VERSION
 
-version 0.100471
+version 0.100472
 
 =head1 SYNOPSIS
 
@@ -94,7 +102,7 @@
 
 =head1 AUTHOR
 
-  Ricardo SIGNES <rjbs at cpan.org>
+Ricardo SIGNES <rjbs at cpan.org>
 
 =head1 COPYRIGHT AND LICENSE
 

Modified: branches/upstream/libmoosex-setonce-perl/current/t/release-pod-syntax.t
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libmoosex-setonce-perl/current/t/release-pod-syntax.t?rev=64632&op=diff
==============================================================================
--- branches/upstream/libmoosex-setonce-perl/current/t/release-pod-syntax.t (original)
+++ branches/upstream/libmoosex-setonce-perl/current/t/release-pod-syntax.t Sat Nov  6 17:16:29 2010
@@ -9,7 +9,7 @@
 
 use Test::More;
 
-eval "use Test::Pod 1.00";
-plan skip_all => "Test::Pod 1.00 required for testing POD" if $@;
+eval "use Test::Pod 1.41";
+plan skip_all => "Test::Pod 1.41 required for testing POD" if $@;
 
-all_pod_files_ok();
+all_pod_files_ok();

Added: branches/upstream/libmoosex-setonce-perl/current/t/setonce.t
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libmoosex-setonce-perl/current/t/setonce.t?rev=64632&op=file
==============================================================================
--- branches/upstream/libmoosex-setonce-perl/current/t/setonce.t (added)
+++ branches/upstream/libmoosex-setonce-perl/current/t/setonce.t Sat Nov  6 17:16:29 2010
@@ -1,0 +1,68 @@
+use strict;
+use warnings;
+use Test::More;
+use Test::Fatal;
+
+use lib 'lib';
+require MooseX::SetOnce;
+
+{
+  package Apple;
+  use Moose;
+
+  has color => (
+    is     => 'rw',
+    traits => [ qw(SetOnce) ],
+  );
+}
+
+{
+  package Orange;
+  use Moose;
+
+  has color => (
+    reader => 'get_color',
+    writer => 'set_color',
+    traits => [ qw(SetOnce) ],
+  );
+}
+
+for my $set (
+  [ Apple   => qw(    color     color) ],
+  [ Orange  => qw(get_color set_color) ],
+) {
+  my ($class, $getter, $setter) = @$set;
+  my $object = $class->new;
+
+  {
+    is(
+      exception { $object->$setter('green'); },
+      undef,
+      "can set a SetOnce attr once",
+    );
+
+    is($object->$getter, 'green', "it has the first value we set");
+  }
+
+  {
+    like(
+      exception { $object->$setter('blue'); },
+      qr{cannot change value.+\bcolor\b},
+      "can't set a SetOnce attr twice (via $setter)",
+    );
+    is($object->$getter, 'green', "it has the first value we set");
+  }
+
+  {
+    like(
+      exception {
+        $object->meta->get_attribute('color')->set_value($object, 'yellow');
+      },
+      qr{cannot change value.+\bcolor\b},
+      "can't set a SetOnce attr twice (via set_value)",
+    );
+    is($object->$getter, 'green', "it has the first value we set");
+  }
+}
+
+done_testing;




More information about the Pkg-perl-cvs-commits mailing list