Perl Filter and Perl API
[idzebra-moved-to-github.git] / perl / test.pl
1 #!/usr/bin/perl
2
3 BEGIN {
4     push (@INC,'demo','blib/lib','blib/arch');
5 }
6 use Test::More tests => 3;
7 use Data::Dumper;
8 use IDZebra::Logger qw(:flags :calls);
9 use IDZebra::Repository;
10 use pod;
11
12 BEGIN { 
13   use_ok('IDZebra'); 
14   use_ok('IDZebra::Service'); 
15   use_ok('IDZebra::Data1'); 
16 }
17
18 #Zebra::API::LogFile("a.log");
19
20
21 IDZebra::init();
22
23 chdir('demo');
24
25 my $service = IDZebra::Service->start('zebra.cfg');
26 my $sess = $service->openSession;
27 #my $sess = $service->createSession;
28 #$sess->open;
29 #my $session = IDZebra::open($service);
30 #IDZebra::close($session);
31 #IDZebra::stop($service);
32 #$sess->close;
33
34 my $rec1=`cat ../lib/IDZebra/Data1.pm`;
35 my $rec2=`cat ../lib/IDZebra/Filter.pm`;
36
37 #$sess->Repository->readConfig;
38 $sess->Repository->readConfig("","pm");
39
40 $sess->begin_trans;
41
42 #$sess->Repository->update(databaseName => 'Default',
43 #                         path  => '/usr/local/work/cvs/zebra/perl/lib');
44 my $s1 = $sess->Repository->update_record($rec1,0,"","Data1.pm");
45 my $s2 = $sess->Repository->update_record($rec2,0,"","Filter.pm");
46 print STDERR "s1:$s1, s2:$s2\n";
47
48 $sess->end_trans;
49 #$sess->begin_trans;
50 #$sess->Repository->delete_record($rec1,0,"","Data1.pm");
51 #$sess->end_trans;
52
53 $sess->select_databases('Default');
54 #$sess->begin_read;
55 print STDERR "Hits:", $sess->search_pqf('@or @attr 1=4 Filter @attr 1=4 Data1','test_1'), "\n";
56 print STDERR "Hits:", $sess->search_pqf('@or @attr 1=4 Filter @attr 1=4 Data1','test_1'), "\n";
57 print STDERR "Hits:", $sess->search_pqf('@or @attr 1=4 Filter @attr 1=4 Data1','test_1'), "\n";
58 #$sess->end_read;
59
60 #$sess->commit;
61 #IDZebra::describe_recordGroup($rep->{rg});
62 #$rep->update;
63 #    print "HOW did we got back???\n";
64 $sess->close;
65 $service->stop;
66                           
67
68 #$rep->{groupName} = "Strucc";
69 #$rep->describe();
70
71 sub test_data1 {
72     $m = IDZebra::nmem_create();
73     my $d1=IDZebra::Data1->new($m,$IDZebra::DATA1_FLAG_XML);
74     my $root=$d1->mk_root('strucc');
75     my $tag1 = $d1->mk_tag($root,'emu',('asd' => 1,
76                                         'bsd' => 2));
77     my $tag2 = $d1->mk_tag($root,'emu');
78     $d1->pr_tree($root);
79     IDZebra::nmem_destroy($m);
80     $d1->DESTROY();
81 }
82
83 IDZebra::DESTROY;