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

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

revision 8 by dpavlin, Wed Jan 4 15:04:58 2006 UTC revision 26 by dpavlin, Thu Jan 5 15:05:58 2006 UTC
# Line 3  Line 3 
3  use strict;  use strict;
4  use blib;  use blib;
5    
6  use Test::More tests => 25;  use Test::More tests => 31;
7    use Test::Exception;
8    use Data::Dumper;
9    
10  BEGIN { use_ok('Search::Estraier') };  BEGIN { use_ok('Search::Estraier') };
11    
# Line 17  my $attr_data = { Line 19  my $attr_data = {
19          'size' => 42,          'size' => 42,
20  };  };
21    
22    my @test_texts = (
23            'This is a test',
24            'of pure-perl bindings',
25            'for HyperEstraier'
26    );
27    
28  ok(my $doc = new Search::Estraier::Document, 'new');  ok(my $doc = new Search::Estraier::Document, 'new');
29    
30    isa_ok($doc, 'Search::Estraier::Document');
31    
32  cmp_ok($doc->id, '==', -1, 'id');  cmp_ok($doc->id, '==', -1, 'id');
33    
34  ok($doc->delete, "delete");  ok($doc->delete, "delete");
# Line 31  foreach my $a (keys %{$attr_data}) { Line 41  foreach my $a (keys %{$attr_data}) {
41          cmp_ok($doc->attr($a), 'eq', $d, "attr $a = $d");          cmp_ok($doc->attr($a), 'eq', $d, "attr $a = $d");
42  }  }
43    
44  ok($doc->add_text('This is a demo'), 'add_text');  foreach my $t (@test_texts) {
45            ok($doc->add_text($t), "add_text: $t");
46    }
47    
48  ok($doc->add_hidden_text('This is hidden text'), 'add_hidden_text');  ok($doc->add_hidden_text('This is hidden text'), 'add_hidden_text');
49    
50    throws_ok { my $text = $doc->texts } qr/return array/, 'texts scalar';
51    ok(my @texts = $doc->texts, 'texts array');
52    
53  ok(my $draft = $doc->dump_draft, 'dump_draft');  ok(my $draft = $doc->dump_draft, 'dump_draft');
54    
55  diag "dump_draft:\n$draft";  #diag "dump_draft:\n$draft";
56    
57  ok(my $doc2 = new_from_draft Search::Estraier::Document($draft), 'new_from_draft');  ok(my $doc2 = new Search::Estraier::Document($draft), 'new from draft');
58  cmp_ok($doc2->dump_draft, 'eq', $draft, 'drafts same');  cmp_ok($doc2->dump_draft, 'eq', $draft, 'drafts same');
59    
60  cmp_ok($doc->id, '==', -1, 'id');  cmp_ok($doc->id, '==', -1, 'id');
61  cmp_ok($doc2->id, '==', -1, 'id');  cmp_ok($doc2->id, '==', -1, 'id');
62    
63  my @attr = $doc->attr_names;  ok(my @attr = $doc->attr_names, 'attr_names');
64  diag "attr_names: ", join(',',@attr), "\n";  #diag "attr_names: ", join(',',@attr), "\n";
65    
66  cmp_ok(scalar @attr, '==', 2, 'attr_names');  cmp_ok(scalar @attr, '==', 2, 'attr_names');
67    
# Line 53  ok(! $doc->attr('foobar'), "non-existant Line 69  ok(! $doc->attr('foobar'), "non-existant
69    
70  foreach my $a (keys %{$attr_data}) {  foreach my $a (keys %{$attr_data}) {
71          cmp_ok($attr_data->{$a}, 'eq', $doc->attr($a), "attr $a = ".$attr_data->{$a});          cmp_ok($attr_data->{$a}, 'eq', $doc->attr($a), "attr $a = ".$attr_data->{$a});
72          ok($doc->add_attr($a, ''), "delete attribute");          ok($doc->add_attr($a, undef), "delete attribute");
73  }  }
74    
75    @attr = $doc->attr_names;
76  #diag "attr_names left: ", join(',',$doc->attr_names), "\n";  #diag "attr_names left: ", join(',',$doc->attr_names), "\n";
77  cmp_ok($doc->attr_names, '==' , 0, "attributes removed");  cmp_ok(@attr, '==' , 0, "attributes removed");
   
 my @texts = $doc->texts;  
 diag "texts: ", join(',',@texts), "\n";  
   
 cmp_ok(scalar @texts, '==', 1, 'texts');  
   
 SKIP: {  
         skip "est_keywords not implemented", 2;  
   
         my @keywords = $doc->keywords;  
         diag "keywords: ", join(',',@keywords), "\n";  
   
         cmp_ok(scalar @keywords, '==', 1, 'keywords');  
 }  
78    
79    #diag "texts: ", join(',',@texts), "\n";
80    ok(eq_array(\@test_texts, \@texts), 'texts');
81    
82  ok(my $snippet = $doc->make_snippet(480, 96, 96, qw(demo is)), "make_snippet");  ok(my $cat_text = $doc->cat_texts, 'cat_text');
83  diag "make_snippet:\n$snippet";  #diag "cat_texts: $cat_text";
84    
85  ok($doc->scan_words(qw(this is demo)), "scan_words");  #diag Dumper($doc);

Legend:
Removed from v.8  
changed lines
  Added in v.26

  ViewVC Help
Powered by ViewVC 1.1.26