2 # =============================================================================
3 # $Id: 03_record_update.t,v 1.7 2004-07-28 08:15:47 adam Exp $
6 # =============================================================================
11 unshift (@INC,'demo','blib/lib','blib/arch');
17 use Test::More tests => 18;
19 # ----------------------------------------------------------------------------
20 # Session opening and closing
24 IDZebra::logFile("test03.log");
25 use_ok('IDZebra::Session');
30 # ----------------------------------------------------------------------------
31 # Session opening and closing
32 my $sess = IDZebra::Session->open(configFile => 'demo/zebra.cfg',
35 isa_ok($sess,"IDZebra::Session");
37 # ----------------------------------------------------------------------------
39 my $rec1=`cat lib/IDZebra/Data1.pm`;
40 my $rec2=`cat lib/IDZebra/Filter.pm`;
41 my $rec3=`cat lib/IDZebra/Session.pm`;
45 # ADAM: we must set database separately (can't be set from group)
46 $sess->databases('demo1');
48 $sysno = $sess->update_record(data => $rec1,
49 recordType => 'grs.perl.pod',
52 $stat = $sess->end_trans;
53 ok(($stat->{updated} == 1), "Updated 1 records");
56 $sysno = $sess->delete_record(data => $rec2,
57 recordType => 'grs.perl.pod',
60 $stat = $sess->end_trans;
61 ok(($stat->{deleted} == 1), "Deleted 1 records");
64 $sysno = $sess->insert_record(data => $rec2,
65 recordType => 'grs.perl.pod',
68 $stat = $sess->end_trans;
69 ok(($stat->{inserted} == 1), "Inserted 1 records");
70 ok(($sysno > 0),"Inserted record got valid sysno");
73 $sysno = $sess->insert_record(data => $rec2,
74 recordType => 'grs.perl.pod',
77 $stat = $sess->end_trans;
78 ok(($stat->{inserted} == 0), "Inserted 0 records");
79 ok(($stat->{updated} == 0), "Updated 0 records");
80 ok(($sysno < 0),"Inserted record got invalid sysno");
84 my $sysno1 = $sess->update_record(data => $rec2,
85 recordType => 'grs.perl.pod',
89 my $sysno2 = $sess->update_record(data => $rec2,
90 recordType => 'grs.perl.pod',
94 $stat = $sess->end_trans;
95 ok(($stat->{inserted} == 0), "Inserted 0 records");
96 ok(($stat->{updated} == 1), "Updated $stat->{updated} records");
97 ok(($sysno1 > 0),"Updated record got valid sysno");
98 ok(($sysno2 < 0),"Unupdated record got invalid sysno");
101 $sysno = $sess->delete_record(data => $rec3,
102 recordType => 'grs.perl.pod',
103 groupName => "demo1",
105 $stat = $sess->end_trans;
109 $sysno = $sess->update_record(data => $rec2,
110 recordType => 'grs.perl.pod',
111 groupName => "demo1",
114 foreach my $i (1..100) {
115 $sysno = $sess->update_record(data => $rec2,
116 recordType => 'grs.perl.pod',
117 groupName => "demo1",
121 foreach my $i (1..10) {
122 $sysno = $sess->update_record(data => $rec3,
123 recordType => 'grs.perl.pod',
124 groupName => "demo1",
128 foreach my $i (1..10) {
129 $sysno = $sess->update_record(data => $rec2,
130 recordType => 'grs.perl.pod',
131 groupName => "demo1",
137 $stat = $sess->end_trans;
138 ok(($stat->{inserted} == 1), "Inserted $stat->{inserted} records");
139 ok(($stat->{updated} == 120), "Updated $stat->{updated} records");
140 ok(($sysno > 0),"Inserted got valid sysno");
142 # ----------------------------------------------------------------------------