/[Search-Estraier]/trunk/t/2_Condition.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 /trunk/t/2_Condition.t

Parent Directory Parent Directory | Revision Log Revision Log


Revision 173 - (show annotations)
Sun Aug 6 18:15:11 2006 UTC (17 years, 8 months ago) by dpavlin
File MIME type: application/x-troff
File size: 1585 byte(s)
added $cond->set_mask
1 #!/usr/bin/perl -w
2
3 use strict;
4 use blib;
5
6 use Test::More tests => 32;
7 use Test::Exception;
8 #use Data::Dumper;
9
10 BEGIN { use_ok('Search::Estraier') };
11
12 ok(my $cond = new Search::Estraier::Condition, 'new');
13 isa_ok($cond, 'Search::Estraier::Condition');
14
15 cmp_ok($cond->max, '==', -1, 'max');
16 cmp_ok($cond->options, '==', 0, 'options');
17
18 ok($cond->set_phrase('search'), 'set_phrase');
19 ok($cond->add_attr('@foo BAR baz'), 'set_attr');
20 ok($cond->set_order('@foo ASC'), 'set_order');
21 ok($cond->set_max(42), 'set_max, number');
22 throws_ok { $cond->set_max('foo') } qr/number/, 'set_max, NaN';
23
24 my $old_options = -1;
25 my @all_options = qw/SURE USUAL FAST AGITO NOIDF SIMPLE/;
26 my $all_opts = 0;
27 foreach my $opt (@all_options) {
28 ok(my $options = $cond->set_options( $opt ), 'set_option '.$opt);
29 cmp_ok($options, '!=', $old_options, "options changed");
30 $old_options = $options;
31 $all_opts += $options;
32 }
33
34 cmp_ok($cond->set_options(@all_options), '==', $all_opts, "set_option all!");
35
36 throws_ok { $cond->set_options('foo') } qr/foo/, "set_option invalid";
37
38 cmp_ok($cond->set_options( SURE => 1 ), '==', $cond->set_options('SURE'), "set_option backward compatibility");
39
40 ok($cond->set_mask(qw/0 1 2/), 'mask');
41
42 my $v;
43 cmp_ok($v = $cond->phrase, 'eq', 'search', "phrase: $v");
44 cmp_ok($v = $cond->max, '==', 42, "max: $v");
45 cmp_ok($v = $cond->options, '!=', 0, "options: $v");
46
47 #diag "attrs: ",join(",",$cond->attrs);
48 cmp_ok($cond->attrs, '==', 1, 'one attrs');
49 ok($cond->add_attr('@foo2 BAR2 baz2'), 'set_attr');
50 #diag "attrs: ",join(",",$cond->attrs);
51 cmp_ok($cond->attrs, '==', 2, 'two attrs');

Properties

Name Value
svn:executable *

  ViewVC Help
Powered by ViewVC 1.1.26