Sha256: 42d9cabcdcbed762c8416d8e2d1f0f4de2a552160f4b579192741c04b44baadd

Contents?: true

Size: 1.45 KB

Versions: 3

Compression:

Stored size: 1.45 KB

Contents

require 'helper'

class TestStemmer < Test::Unit::TestCase

  def test_stemmer_creation
    assert_kind_of ::Lingua::Stemmer, ::Lingua::Stemmer.new
  end

  def test_exceptions
    assert_raise ::Lingua::StemmerError do
      # invalid encoding for language
      ::Lingua::Stemmer.new :language => "ro", :encoding => "ISO_8859_1"
    end
    assert_raise ::Lingua::StemmerError do
      # invalid language
      ::Lingua::Stemmer.new :language => "cat"
    end
  end

  def test_latin
    assert_nothing_raised do
      ::Lingua::Stemmer.new :language => "latin", :encoding => "ISO_8859_1"
    end
  end

  def test_stem
    s= ::Lingua::Stemmer.new(:language => "en", :encoding => "UTF_8")
    assert_equal s.stem("obnoxious"), "obnoxi"
    assert_equal s.stem("personalities"), "person"
  end

  def test_string_stemmer
    assert_equal ::Lingua.stemmer("installation", :language => "en"), "instal"
    stemmer= ::Lingua.stemmer("installation", :language => "fr") do | word |
      assert_equal word, "install"
    end
    assert_kind_of ::Lingua::Stemmer, stemmer
    assert_equal stemmer.encoding, "UTF_8"
  end

  def test_array_stemmer
    results= ::Lingua.stemmer(["one", "two"], :language => "de", :encoding => "ISO_8859_1")
    assert_equal 2, results.size
    assert_kind_of Array, results
  end

  def test_stemmer_subclass
    assert_raises(RuntimeError) do
      Class.new(Lingua::Stemmer) {
        def native_init a, b; end
      }.new.stem('cow')
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
ruby-stemmer-0.8.5 test/lingua/test_stemmer.rb
ruby-stemmer-0.8.3 test/lingua/test_stemmer.rb
ruby-stemmer-0.8.2 test/lingua/test_stemmer.rb