Cleaned test scripts to be (nearly?) atomic
[idzebra-moved-to-github.git] / perl / t / 03_record_update.t
index 9742fc7..3d611d3 100644 (file)
@@ -1,6 +1,6 @@
 #!perl
 # =============================================================================
-# $Id: 03_record_update.t,v 1.7 2004-07-28 08:15:47 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,107 +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);
 
-# ADAM: we must set database separately (can't be set from group)
+$sess->init;
 $sess->databases('demo1');
-$sess->begin_trans;
-$sysno = $sess->update_record(data       => $rec1,
-                             recordType => 'grs.perl.pod',
-                             groupName  => "demo1",
-                             );
-$stat = $sess->end_trans;
-ok(($stat->{updated} == 1), "Updated 1 records");
 
 $sess->begin_trans;
-$sysno = $sess->delete_record(data       => $rec2,
-                             recordType => 'grs.perl.pod',
-                             groupName  => "demo1",
-                             );
-$stat = $sess->end_trans;
-ok(($stat->{deleted} == 1), "Deleted 1 records");
 
-$sess->begin_trans;
-$sysno = $sess->insert_record(data       => $rec2,
+($ret,$sysno) = $sess->insert_record(data       => $rec1,
                              recordType => 'grs.perl.pod',
-                             groupName  => "demo1",
                              );
+
+ok(($ret == 0),"Must return ret=0 (OK)");
+
 $stat = $sess->end_trans;
 ok(($stat->{inserted} == 1), "Inserted 1 records");
-ok(($sysno > 0),"Inserted record got valid sysno");
 
 $sess->begin_trans;
-$sysno = $sess->insert_record(data       => $rec2,
+($ret,$sysno) = $sess->insert_record(data       => $rec2,
                              recordType => 'grs.perl.pod',
-                             groupName  => "demo1",
                              );
+ok(($ret == 0),"Insert record ok");
+
 $stat = $sess->end_trans;
-ok(($stat->{inserted} == 0), "Inserted 0 records");
-ok(($stat->{updated} == 0), "Updated 0 records");
-ok(($sysno < 0),"Inserted record got invalid sysno");
+ok(($stat->{inserted} == 1), "Inserted 1 records");
 
 
 $sess->begin_trans;
-my $sysno1 = $sess->update_record(data       => $rec2,
-                                 recordType => 'grs.perl.pod',
-                                 groupName  => "demo1",
-                                 );
+($ret,$sysno) = $sess->update_record(data       => $rec3,
+                             recordType => 'grs.perl.pod',
+                              sysno => $sysno,
+                             );
 
-my $sysno2 = $sess->update_record(data       => $rec2,
-                                 recordType => 'grs.perl.pod',
-                                 groupName  => "demo1",
-                                 );
+ok(($ret == 0),"update record ok");
 
-$stat = $sess->end_trans;
-ok(($stat->{inserted} == 0), "Inserted 0 records");
-ok(($stat->{updated} == 1), "Updated $stat->{updated} records");
-ok(($sysno1 > 0),"Updated record got valid sysno");
-ok(($sysno2 < 0),"Unupdated record got invalid sysno");
 
-$sess->begin_trans;
-$sysno = $sess->delete_record(data       => $rec3,
-                             recordType => 'grs.perl.pod',
-                             groupName  => "demo1",
-                             );
 $stat = $sess->end_trans;
-
+ok(($stat->{inserted} == 0), "not inserted");
+ok(($stat->{updated} == 1), "updated ok");
+$sess->commit;
 
 $sess->begin_trans;
-$sysno = $sess->update_record(data       => $rec2,
+#print STDERR "\nAbout to call delete. sysno=$sysno \n"; #!!!
+($ret,$sysno) = $sess->delete_record( data       => $rec3,
+                              sysno => $sysno,
                              recordType => 'grs.perl.pod',
-                             groupName  => "demo1",
                              );
+ok(($ret == 0),"delete record ok");
 
-foreach my $i (1..100) {
-    $sysno = $sess->update_record(data       => $rec2,
-                                 recordType => 'grs.perl.pod',
-                                 groupName  => "demo1",
-                                 force      => 1,
-                                 );
-}
-foreach my $i (1..10) {
-    $sysno = $sess->update_record(data       => $rec3,
-                                 recordType => 'grs.perl.pod',
-                                 groupName  => "demo1",
-                                 force      => 1,
-                                 );
-}
-foreach my $i (1..10) {
-    $sysno = $sess->update_record(data       => $rec2,
-                                 recordType => 'grs.perl.pod',
-                                 groupName  => "demo1",
-                                 force      => 1,
-                                 );
-}
-
+#print STDERR "\nafter delete ret=$ret sysno=$sysno \n"; #!!!
 
 $stat = $sess->end_trans;
-ok(($stat->{inserted} == 1), "Inserted $stat->{inserted} records");
-ok(($stat->{updated} == 120), "Updated $stat->{updated} records");
-ok(($sysno > 0),"Inserted got valid sysno");
+ok(($stat->{inserted} == 0), "not inserted");
+ok(($stat->{updated} == 0), "updated ok");
+ok(($stat->{deleted} == 1), "deleted ok");
+$sess->commit;
+
 
-# ----------------------------------------------------------------------------
-# Close session
 
-$sess->commit;
 $sess->close;