/[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

Diff of /trunk/t/2_Condition.t

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 16 by dpavlin, Wed Jan 4 22:43:24 2006 UTC revision 98 by dpavlin, Sat Jan 28 19:18:13 2006 UTC
# Line 3  Line 3 
3  use strict;  use strict;
4  use blib;  use blib;
5    
6  use Test::More tests => 8;  use Test::More tests => 31;
7  use Test::Exception;  use Test::Exception;
8  #use Data::Dumper;  #use Data::Dumper;
9    
# Line 12  BEGIN { use_ok('Search::Estraier') }; Line 12  BEGIN { use_ok('Search::Estraier') };
12  ok(my $cond = new Search::Estraier::Condition, 'new');  ok(my $cond = new Search::Estraier::Condition, 'new');
13  isa_ok($cond, 'Search::Estraier::Condition');  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');  ok($cond->set_phrase('search'), 'set_phrase');
19  ok($cond->add_attr('@foo BAR baz'), 'set_phrase');  ok($cond->add_attr('@foo BAR baz'), 'set_attr');
20  ok($cond->set_order('@foo ASC'), 'set_order');  ok($cond->set_order('@foo ASC'), 'set_order');
21  ok($cond->set_max(42), 'set_max, number');  ok($cond->set_max(42), 'set_max, number');
22  throws_ok { $cond->set_max('foo') } qr/number/, 'set_max, NaN';  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    my $v;
41    cmp_ok($v = $cond->phrase, 'eq', 'search', "phrase: $v");
42    cmp_ok($v = $cond->max, '==', 42, "max: $v");
43    cmp_ok($v = $cond->options, '!=', 0, "options: $v");
44    
45    #diag "attrs: ",join(",",$cond->attrs);
46    cmp_ok($cond->attrs, '==', 1, 'one attrs');
47    ok($cond->add_attr('@foo2 BAR2 baz2'), 'set_attr');
48    #diag "attrs: ",join(",",$cond->attrs);
49    cmp_ok($cond->attrs, '==', 2, 'two attrs');

Legend:
Removed from v.16  
changed lines
  Added in v.98

  ViewVC Help
Powered by ViewVC 1.1.26