From 213a153b5869bc71d651bd0517166944b4734e94 Mon Sep 17 00:00:00 2001 From: Colin Kuskie Date: Fri, 5 Nov 2010 08:06:51 -0700 Subject: [PATCH] Can't autoincrement methods. Write test collateral to database if you want to read it back later. --- lib/WebGUI/Crud.pm | 4 ++-- t/Crud.t | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/WebGUI/Crud.pm b/lib/WebGUI/Crud.pm index ff741c461..d7fd95778 100644 --- a/lib/WebGUI/Crud.pm +++ b/lib/WebGUI/Crud.pm @@ -557,7 +557,7 @@ sub demote { if ($id ne "") { $db->write("update ".$dbh->quote_identifier($tableName)." set sequenceNumber=sequenceNumber+1 where ".$dbh->quote_identifier($tableKey)."=?",[$self->getId]); $db->write("update ".$dbh->quote_identifier($tableName)." set sequenceNumber=sequenceNumber-1 where ".$dbh->quote_identifier($tableKey)."=?",[$id]); - $self->sequenceNumber($self->sequenceNumber++); + $self->sequenceNumber($self->sequenceNumber+1); } $db->commit; return 1; @@ -822,7 +822,7 @@ sub promote { if ($id ne "") { $db->write("update ".$dbh->quote_identifier($tableName)." set sequenceNumber=sequenceNumber-1 where ".$dbh->quote_identifier($tableKey)."=?", [$self->getId]); $db->write("update ".$dbh->quote_identifier($tableName)." set sequenceNumber=sequenceNumber+1 where ".$dbh->quote_identifier($tableKey)."=?", [$id]); - $self->sequenceNumber($self->sequenceNumber--); + $self->sequenceNumber($self->sequenceNumber-1); } $db->commit; return 1; diff --git a/t/Crud.t b/t/Crud.t index 39d82ed9c..699e1b30e 100644 --- a/t/Crud.t +++ b/t/Crud.t @@ -92,8 +92,10 @@ is($record2->getId, $copyOfRecord2->getId, "can reinstanciate record"); # sequencing is($record2->sequenceNumber, 2, "record 1 sequenceNumber is 2"); my $record3 = WebGUI::Cruddy->new($session); +$record3->write; is($record3->sequenceNumber, 3, "record 1 sequenceNumber is 3"); my $record4 = WebGUI::Cruddy->new($session); +$record4->write; is($record4->sequenceNumber, 4, "record 1 sequenceNumber is 4"); ok($record4->demote, "demotion reports success"); is($record4->sequenceNumber, 4, "can't demote further than end");