/[wait]/cvs-head/t/wais.t
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Contents of /cvs-head/t/wais.t

Parent Directory Parent Directory | Revision Log Revision Log


Revision 63 - (show annotations)
Mon Jan 14 23:29:20 2002 UTC (22 years, 3 months ago) by laperla
File MIME type: application/x-troff
File size: 3106 byte(s)
Allow running test in parallel processes for debugging.

1 #!/usr/bin/perl -w
2 # -*- Mode: Perl -*-
3 # $Basename: wais.t $
4 # $Revision: 1.14 $
5 # Author : Ulrich Pfeifer
6 # Created On : Tue Dec 12 16:55:05 1995
7 # Last Modified By: Ulrich Pfeifer
8 # Last Modified On: Sat Nov 11 16:33:54 2000
9 # Language : Perl
10 # Update Count : 187
11 # Status : Unknown, Use with caution!
12 #
13 # (C) Copyright 1997, Ulrich Pfeifer, all rights reserved.
14 #
15 #
16
17 use WAIT::Database;
18 use WAIT::Wais;
19 use Cwd;
20 use strict;
21 use File::Path qw(mkpath rmtree);
22
23 $SIG{__DIE__} = $SIG{INT} = \&cleanup;
24
25 my $pwd = getcwd();
26 mkpath "/tmp/wait-test-$$";
27 print "$^X -Mblib blib/script/bibdb -dir /tmp/wait-test-$$ -database sample\n";
28 system "$^X -Mblib blib/script/bibdb -dir /tmp/wait-test-$$ -database sample > /dev/null 2>&1";
29 print "1..7\n";
30
31 use Fcntl;
32 if (1) {
33 my $db = WAIT::Database->open(
34 name => 'sample',
35 'directory' => "/tmp/wait-test-$$",
36 'mode' => O_RDWR,
37 );
38 print "not " unless $db;
39 print "ok 1\n";
40 my $tb = $db->table(name => 'bibdb');
41 print "not " unless $tb;
42 print "ok 2\n";
43
44 print "not " unless $tb->open;
45 print "ok 3\n";
46
47 print "not " unless $tb->set(top => 1);
48 print "ok 4\n";
49
50 $tb->close;
51 $db->close;
52 }
53
54
55 my $db = "/tmp/wait-test-$$/sample/bibdb";
56 print "# Testing WAIT searches\n";
57 my $result = WAIT::Wais::Search({
58 'query' => 'pfeifer',
59 'database' => $db,
60 });
61
62 &headlines($result);
63 my $id = ($result->header)[9]->[6];
64 # no strict order
65 $$id = "wait;/tmp/wait-test-$$/sample/bibdb;13";
66 #$length = ($result->header)[9]->[3];
67 my @header = $result->header;
68
69 #my $types=($result->header)[9]->[5];
70 #print STDERR "\n## @$types\n";
71
72 my $short = ($result->header)[0]->[6];
73
74 my $result_text = $result->text;
75 print $#header >= 14 ?
76 "ok 5\n" :
77 "#\$\#header[$#header]result_text[$result_text]\nnot ok 5\n";
78
79 print "# Testing local retrieve\n";
80 $result = WAIT::Wais::Retrieve(
81 'database' => $db,
82 'docid' => $id,
83 'query' => 'pfeifer',
84 'type' => 'HTML',
85 );
86 $result_text = $result->text;
87 $result_text =~ s/^/# /gm;
88 print $result_text =~ m!Pfeifer/Fuhr:93! ?
89 "ok 6\n" :
90 "# result_text[$result_text]\nnot ok 6\n";
91
92 my @x = $short->split;
93 print $x[2] =~ /test.ste 3585 393$/ || $x[2] == 1 ?
94 "ok 7\n" :
95 "# \@x:[@x]\nnot ok 7\n";
96
97
98 #######################################################################
99
100 sub headlines {
101 my $result = shift;
102 my ($tag, $score, $lines, $length, $headline, $types, $id);
103
104 for ($result->header) {
105 ($tag, $score, $lines, $length, $headline, $types, $id) = @{$_};
106 printf "# %5d %5d %s %s\n",
107 $score*1000, $lines, $headline, join(',', @{$types});
108 }
109 }
110
111 # releasing 1 pending lock... at .../LockFile/Simple.pm
112 open STDERR, '>/dev/null';
113
114 sub cleanup
115 {
116 rmtree "/tmp/wait-test-$$";
117 }
118
119
120 sub END
121 {
122 &cleanup;
123 }

Properties

Name Value
cvs2svn:cvs-rev 1.3

  ViewVC Help
Powered by ViewVC 1.1.26