X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=perl%2Ft%2F03_record_update.t;h=3d611d36855f9c5066794c622bc4c92867f49e2b;hb=4eb3b54bb2ca9af74f39f000d3d40dba99ded887;hp=04600da97a0986ea77b2fdf73bba86f5fceeccf2;hpb=a137a5cabe5ce29c9c98445f4099f7d528663bb9;p=idzebra-moved-to-github.git diff --git a/perl/t/03_record_update.t b/perl/t/03_record_update.t index 04600da..3d611d3 100644 --- a/perl/t/03_record_update.t +++ b/perl/t/03_record_update.t @@ -1,6 +1,6 @@ #!perl # ============================================================================= -# $Id: 03_record_update.t,v 1.8 2004-09-09 14:12:10 adam Exp $ +# $Id: 03_record_update.t,v 1.10 2004-09-15 14:11:06 heikki Exp $ # # Perl API header # ============================================================================= @@ -14,7 +14,7 @@ BEGIN { use strict; use warnings; -use Test::More tests => 18; +use Test::More tests => 15; # ---------------------------------------------------------------------------- # Session opening and closing @@ -40,38 +40,62 @@ my $rec1=`cat lib/IDZebra/Data1.pm`; my $rec2=`cat lib/IDZebra/Filter.pm`; my $rec3=`cat lib/IDZebra/Session.pm`; -my ($sysno, $stat); +my ($sysno, $stat, $ret); $sess->init; - -# ADAM: we must set database separately (can't be set from group) $sess->databases('demo1'); $sess->begin_trans; -my $ret = $sess->insert_record(data => $rec1, + +($ret,$sysno) = $sess->insert_record(data => $rec1, recordType => 'grs.perl.pod', - groupName => "demo1", ); -print STDERR "\nAfter first insert_record. ret=$ret\n"; - ok(($ret == 0),"Must return ret=0 (OK)"); $stat = $sess->end_trans; ok(($stat->{inserted} == 1), "Inserted 1 records"); -die; $sess->begin_trans; -$sysno=-42; -$ret = $sess->insert_record(data => $rec2, +($ret,$sysno) = $sess->insert_record(data => $rec2, recordType => 'grs.perl.pod', - groupName => "demo1", - sysno => \$sysno, ); -ok(($ret == 0 && $sysno != 42),"Inserted record got valid sysno"); +ok(($ret == 0),"Insert record ok"); $stat = $sess->end_trans; ok(($stat->{inserted} == 1), "Inserted 1 records"); + +$sess->begin_trans; +($ret,$sysno) = $sess->update_record(data => $rec3, + recordType => 'grs.perl.pod', + sysno => $sysno, + ); + +ok(($ret == 0),"update record ok"); + + +$stat = $sess->end_trans; +ok(($stat->{inserted} == 0), "not inserted"); +ok(($stat->{updated} == 1), "updated ok"); +$sess->commit; + +$sess->begin_trans; +#print STDERR "\nAbout to call delete. sysno=$sysno \n"; #!!! +($ret,$sysno) = $sess->delete_record( data => $rec3, + sysno => $sysno, + recordType => 'grs.perl.pod', + ); +ok(($ret == 0),"delete record ok"); + +#print STDERR "\nafter delete ret=$ret sysno=$sysno \n"; #!!! + +$stat = $sess->end_trans; +ok(($stat->{inserted} == 0), "not inserted"); +ok(($stat->{updated} == 0), "updated ok"); +ok(($stat->{deleted} == 1), "deleted ok"); $sess->commit; + + + $sess->close;