4 push (@INC,'demo','blib/lib','blib/arch');
6 use Test::More tests => 3;
8 use IDZebra::Logger qw(:flags :calls);
9 use IDZebra::Repository;
14 use_ok('IDZebra::Service');
15 use_ok('IDZebra::Data1');
18 #Zebra::API::LogFile("a.log");
21 #my $arr = IDZebra::give_me_array("strucc",6);
25 #for (@arr) {print "$_\n";}
33 my $service = IDZebra::Service->start('zebra.cfg');
34 my $sess = $service->openSession;
35 #my $sess = $service->createSession;
37 #my $session = IDZebra::open($service);
38 #IDZebra::close($session);
39 #IDZebra::stop($service);
42 my $rec1=`cat ../lib/IDZebra/Data1.pm`;
43 my $rec2=`cat ../lib/IDZebra/Filter.pm`;
45 #$sess->Repository->readConfig;
46 $sess->Repository->readConfig("","pm");
50 #$sess->Repository->update(databaseName => 'Default',
51 # path => '/usr/local/work/cvs/zebra/perl/lib');
52 my $s1 = $sess->Repository->update_record($rec1,0,"","Data1.pm");
53 my $s2 = $sess->Repository->update_record($rec2,0,"","Filter.pm");
54 print STDERR "s1:$s1, s2:$s2\n";
58 #$sess->Repository->delete_record($rec1,0,"","Data1.pm");
61 $sess->select_databases('Default');
66 #print STDERR "Hits:", $sess->search_pqf('@or @attr 1=4 Filter @attr 1=4 Data1','test_1'), "\n";
67 #print STDERR "Hits:", $sess->search_pqf('@or @attr 1=4 Filter @attr 1=4 Data1','test_1'), "\n";
69 my $rs1 = $sess->search_pqf('@or @attr 1=4 Filter @attr 1=4 Data1','test_1');
70 print STDERR "Rs1 '$rs1->{name}' has $rs1->{recordCount} hits\n";
72 my $rs2 = $sess->search_pqf('@or @attr 1=4 Filter @attr 1=4 Data1','test_2');
73 #print STDERR "Rs2 '$rs2->{name}' has $rs2->{recordCount} hits\n";
75 my $rs3 = $sess->sortResultsets ('1=4 id','test_3',($rs1));
76 #print STDERR "Rs3 '$rs3->{name}' has $rs3->{recordCount} hits\n";
77 #print STDERR "Rs3 '$rs3->{name}' error $rs3->{errCode}: $rs3->{errString}\n";
81 #for ($i=1; $i<100000; $i++) {
82 my @recs1 = $rs1->records(from=>1,to=>2);
84 #my $res=$sess->retrieve_records('test_1',1,1);
89 #IDZebra::describe_recordGroup($rep->{rg});
91 # print "HOW did we got back???\n";
95 my $so = IDZebra::ScanObj->new;
97 $so->{num_entries} = 20;
98 $so->{is_partial} = 0;
99 #print STDERR "Pos:$so->{position}\nNum:$so->{num_entries}\nPartial:$so->{is_partial}\n";
101 IDZebra::scan_PQF($sess->{zh}, $so,
105 #print STDERR "Pos:$so->{position}\nNum:$so->{num_entries}\nPartial:$so->{is_partial}\n";
107 for ($i=1; $i<=$so->{num_entries}; $i++) {
108 my $se = IDZebra::getScanEntry($so, $i);
109 print STDERR "$se->{term} ($se->{occurrences})\n";
115 foreach my $rec (@recs1) {
116 foreach my $line (split (/\n/, $rec->{buf})) {
117 if ($line =~ /^package/) { print STDERR "$line\n";}
121 #$rep->{groupName} = "Strucc";
125 $m = IDZebra::nmem_create();
126 my $d1=IDZebra::Data1->new($m,$IDZebra::DATA1_FLAG_XML);
127 my $root=$d1->mk_root('strucc');
128 my $tag1 = $d1->mk_tag($root,'emu',('asd' => 1,
130 my $tag2 = $d1->mk_tag($root,'emu');
132 IDZebra::nmem_destroy($m);