This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
add tests for overridden Class::Struct accessors
authorRenee Bäcker <perl@renee-baecker.de>
Sat, 9 Jun 2012 11:17:18 +0000 (04:17 -0700)
committerFather Chrysostomos <sprout@cpan.org>
Fri, 15 Jun 2012 19:28:18 +0000 (12:28 -0700)
lib/Class/Struct.t

index 694d622..71cdaa3 100644 (file)
@@ -33,11 +33,29 @@ package MyOther;
 use Class::Struct s => '$', a => '@', h => '%', c => 'aClass';
 
 #
+# test overriden accessors
+#
+package OverrideAccessor;
+use Class::Struct;
+
+struct( 'OverrideAccessor', { count => '$' } );
+
+sub count {
+  my ($self,$count) = @_;
+
+  if ( @_ >= 2 ) {
+    $self->{'OverrideAccessor::count'} = $count + 9;
+  }
+
+  return $self->{'OverrideAccessor::count'};
+}
+
+#
 # back to main...
 #
 package main;
 
-use Test::More tests => 24;
+use Test::More tests => 26;
 
 my $obj = MyObj->new;
 isa_ok $obj, 'MyObj';
@@ -101,3 +119,9 @@ is $obk->SomeElem(), 123;
 my $recobj = RecClass->new();
 isa_ok $recobj, 'RecClass';
 
+my $override_obj = OverrideAccessor->new( count => 3 );
+is $override_obj->count, 12;
+
+$override_obj->count( 1 );
+is $override_obj->count, 10;
+