Class: TestBayes
- Inherits:
-
Test::Unit::TestCase
- Object
- Test::Unit::TestCase
- TestBayes
- Defined in:
- lib/test/unit/bayes_test.rb
Instance Method Summary collapse
- #setup ⇒ Object
- #test_add_category ⇒ Object
- #test_add_category_that_already_exists ⇒ Object
- #test_classify ⇒ Object
- #test_classify_with_insufficient_categories ⇒ Object
- #test_initialize_with_hash ⇒ Object
- #test_train_missing_category ⇒ Object
- #test_train_valid_category ⇒ Object
Instance Method Details
#setup ⇒ Object
4 5 6 |
# File 'lib/test/unit/bayes_test.rb', line 4 def setup @bayes = OmniCat::Classifiers::Bayes.new end |
#test_add_category ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/test/unit/bayes_test.rb', line 8 def test_add_category @bayes.add_category "neutral" assert_not_nil(@bayes.categories["neutral"]) assert_equal( ["neutral"], @bayes.categories.keys ) assert_equal( 0, @bayes.categories["neutral"].doc_count ) assert_equal( {}, @bayes.categories["neutral"].tokens ) assert_equal( 0, @bayes.categories["neutral"].token_count ) end |
#test_add_category_that_already_exists ⇒ Object
29 30 31 32 |
# File 'lib/test/unit/bayes_test.rb', line 29 def test_add_category_that_already_exists @bayes.add_category "neutral" assert_raise(StandardError) { @bayes.add_category "neutral" } end |
#test_classify ⇒ Object
55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
# File 'lib/test/unit/bayes_test.rb', line 55 def test_classify @bayes.add_category "positive" @bayes.add_category "negative" @bayes.train("positive", "good job") @bayes.train("negative", "bad work") assert_equal( "positive", @bayes.classify("very good position for this sentence").category[:name] ) assert_equal( "negative", @bayes.classify("bad words").category[:name] ) end |
#test_classify_with_insufficient_categories ⇒ Object
82 83 84 |
# File 'lib/test/unit/bayes_test.rb', line 82 def test_classify_with_insufficient_categories assert_raise(StandardError) { @bayes.classify "blank" } end |
#test_initialize_with_hash ⇒ Object
70 71 72 73 74 75 76 77 78 79 80 |
# File 'lib/test/unit/bayes_test.rb', line 70 def test_initialize_with_hash bayes1 = ::OmniCat::Classifiers::Bayes.new bayes1.add_category "positive" bayes1.add_category "negative" bayes1.train("positive", "good job") bayes1.train("negative", "bad work") h1 = bayes1.to_hash bayes2 = ::OmniCat::Classifiers::Bayes.new(h1) assert_equal(h1, bayes2.to_hash) end |
#test_train_missing_category ⇒ Object
51 52 53 |
# File 'lib/test/unit/bayes_test.rb', line 51 def test_train_missing_category assert_raise(StandardError) { @bayes.train "neutral", "how are you?" } end |
#test_train_valid_category ⇒ Object
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/test/unit/bayes_test.rb', line 34 def test_train_valid_category @bayes.add_category "neutral" @bayes.train "neutral", "how are you?" assert_equal( 1, @bayes.categories["neutral"].doc_count ) assert_equal( {"how" => 1, "are" => 1, "you" => 1}, @bayes.categories["neutral"].tokens ) assert_equal( 3, @bayes.categories["neutral"].token_count ) end |