~ubuntu-branches/ubuntu/wily/ruby-ferret/wily

« back to all changes in this revision

Viewing changes to test/unit/search/tc_sort.rb

  • Committer: Bazaar Package Importer
  • Author(s): Antonio Terceiro
  • Date: 2011-07-28 00:02:49 UTC
  • Revision ID: james.westby@ubuntu.com-20110728000249-v0443y69ftcpxwi6
Tags: upstream-0.11.6
ImportĀ upstreamĀ versionĀ 0.11.6

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
require File.dirname(__FILE__) + "/../../test_helper"
 
2
 
 
3
class SortTest < Test::Unit::TestCase
 
4
  include Ferret::Search
 
5
 
 
6
  def test_basic()
 
7
    s = Sort::RELEVANCE
 
8
    assert_equal(2, s.fields.size)
 
9
    assert_equal(SortField::SCORE, s.fields[0])
 
10
    assert_equal(SortField::DOC_ID, s.fields[1])
 
11
 
 
12
    s = Sort::INDEX_ORDER
 
13
    assert_equal(1, s.fields.size)
 
14
    assert_equal(SortField::DOC_ID, s.fields[0])
 
15
  end
 
16
 
 
17
  def test_string_init()
 
18
    s = Sort.new(:field)
 
19
    assert_equal(2, s.fields.size)
 
20
    assert_equal(:auto, s.fields[0].type)
 
21
    assert_equal(:field, s.fields[0].name)
 
22
    assert_equal(SortField::DOC_ID, s.fields[1])
 
23
 
 
24
    s = Sort.new([:field1, :field2, :field3])
 
25
    assert_equal(4, s.fields.size)
 
26
    assert_equal(:auto, s.fields[0].type)
 
27
    assert_equal(:field1, s.fields[0].name)
 
28
    assert_equal(:auto, s.fields[1].type)
 
29
    assert_equal(:field2, s.fields[1].name)
 
30
    assert_equal(:auto, s.fields[2].type)
 
31
    assert_equal(:field3, s.fields[2].name)
 
32
    assert_equal(SortField::DOC_ID, s.fields[3])
 
33
  end
 
34
 
 
35
  def test_multi_fields()
 
36
    sf1 = SortField.new(:field, {:type => :integer,
 
37
                                 :reverse => true})
 
38
    sf2 = SortField::SCORE
 
39
    sf3 = SortField::DOC_ID
 
40
    s = Sort.new([sf1, sf2, sf3])
 
41
 
 
42
    assert_equal(3, s.fields.size)
 
43
    assert_equal(:integer, s.fields[0].type)
 
44
    assert_equal(:field, s.fields[0].name)
 
45
    assert(s.fields[0].reverse?)
 
46
    assert_equal(SortField::SCORE, s.fields[1])
 
47
    assert_equal(SortField::DOC_ID, s.fields[2])
 
48
  end
 
49
end