Another Moose Test Day

Why break a habit day here in the Moose-Pen

Time for another bottom up test run and for Database::Accessor I had

8 files changed, 317 insertions(+), 237 deletions(-)

and all my tests passed so maybe a very short post today?

Driver::DBI was changed about the same with

7 files changed, 1056 insertions(+), 835 deletions(-)

but this time round I got a full pass but I was plagued by warnings like these.

Use of uninitialized value in array element at /home/scolesj/database-accessor-driver-dbi/lib/Database/Accessor/Driver/ line 803.
Use of uninitialized value in numeric ge (>=) at /home/scolesj/database-accessor-driver-dbi/lib/Database/Accessor/Driver/ line 802.

I guess a little longer post today.

The code in question

my @params = @{ $self->params() };
if ($self->identity_index() >=0){

was from what I tried to fix the other day. I did fix it for '22_fields_extended.t' test case but it is all the other ones that are now causing me grief.

This one proved a little tricky to fix but in the end I got it. I had to borrow from the good old 'index' command where the '-1' result means not found as this is an internal value I think I can get away with that.

First I had to change Database::Accessor a little first by adding in a default value of '1-' for the 'identity_index' attribute on the 'Database::Accessor::Roles::Driver' class;

has identity_index => (
is => 'ro',
isa => 'Int',
++ default => -1,

and in the 'get_dad_elements' sub to account for that new '-1' value,

       my $self = shift;
        my ($action,$opt) = @_;
--      $self->_identity_index(undef);
++      $self->_identity_index(-1);

            if ( ref($element) eq 'Database::Accessor::Element' and $element->identity() ){
--              if ($self->_identity_index()){
++              if ($self->_identity_index() >=0 ){
                    die " Database::Accessor->"

after a quick check-in and pull I am now getting;

All tests successful.
Files=11, Tests=462,

Onto something new next week I guess.


Leave a comment

About byterock

user-pic Long time Perl guy, a few CPAN mods allot of work on DBD::Oracle and a few YAPC presentations