def test_score_with_zero_bayes_denon(self, get_categories_mock): cat1_mock = mock.MagicMock() cat1_mock.get_token_count.return_value = 2 cat1_mock.get_tally.return_value = 8 cat2_mock = mock.MagicMock() cat2_mock.get_token_count.return_value = 4 cat2_mock.get_tally.return_value = 32 get_categories_mock.return_value = {'foo': cat1_mock, 'bar': cat2_mock} sb = SimpleBayes() sb.calculate_category_probability() sb.probabilities['foo']['prc'] = 0 sb.probabilities['foo']['prnc'] = 0 result = sb.score('hello world') self.assertEqual({'bar': 1.777777777777778}, result) assert 3 == get_categories_mock.call_count, \ get_categories_mock.call_count cat1_mock.get_token_count.assert_any_call('hello') cat1_mock.get_token_count.assert_any_call('world') cat1_mock.get_tally.assert_called_once_with() cat2_mock.get_token_count.assert_any_call('hello') cat2_mock.get_token_count.assert_any_call('world') cat2_mock.get_tally.assert_called_once_with()
def test_score_with_zero_bayes_denon(self, get_categories_mock): cat1_mock = mock.MagicMock() cat1_mock.get_token_count.return_value = 2 cat1_mock.get_tally.return_value = 8 cat2_mock = mock.MagicMock() cat2_mock.get_token_count.return_value = 4 cat2_mock.get_tally.return_value = 32 get_categories_mock.return_value = { 'foo': cat1_mock, 'bar': cat2_mock } sb = SimpleBayes() sb.calculate_category_probability() sb.probabilities['foo']['prc'] = 0 sb.probabilities['foo']['prnc'] = 0 result = sb.score('hello world') self.assertEqual( { 'bar': 1.777777777777778 }, result ) assert 3 == get_categories_mock.call_count, \ get_categories_mock.call_count cat1_mock.get_token_count.assert_any_call('hello') cat1_mock.get_token_count.assert_any_call('world') cat1_mock.get_tally.assert_called_once_with() cat2_mock.get_token_count.assert_any_call('hello') cat2_mock.get_token_count.assert_any_call('world') cat2_mock.get_tally.assert_called_once_with()
def test_classify(self, get_categories_mock): cat1_mock = mock.MagicMock() cat1_mock.get_token_count.return_value = 2 cat1_mock.get_tally.return_value = 8 cat2_mock = mock.MagicMock() cat2_mock.get_token_count.return_value = 4 cat2_mock.get_tally.return_value = 32 get_categories_mock.return_value = { 'foo': cat1_mock, 'bar': cat2_mock } sb = SimpleBayes() sb.calculate_category_probability() result = sb.classify('hello world') self.assertEqual('bar', result) assert 3 == get_categories_mock.call_count, \ get_categories_mock.call_count cat1_mock.get_token_count.assert_any_call('hello') cat1_mock.get_token_count.assert_any_call('world') cat1_mock.get_tally.assert_called_once_with() cat2_mock.get_token_count.assert_any_call('hello') cat2_mock.get_token_count.assert_any_call('world') cat2_mock.get_tally.assert_called_once_with()
def test_classify_with_empty_category(self, get_categories_mock): cat_mock = mock.MagicMock() cat_mock.get_tally.return_value = 0 cat_mock.get_token_count.return_value = 0 get_categories_mock.return_value = {'foo': cat_mock} sb = SimpleBayes() sb.calculate_category_probability() result = sb.classify('hello world') self.assertIsNone(result) assert 3 == get_categories_mock.call_count, \ get_categories_mock.call_count cat_mock.get_tally.assert_called_once_with()
def test_classify_with_empty_category(self, get_categories_mock): cat_mock = mock.MagicMock() cat_mock.get_tally.return_value = 0 cat_mock.get_token_count.return_value = 0 get_categories_mock.return_value = { 'foo': cat_mock } sb = SimpleBayes() sb.calculate_category_probability() result = sb.classify('hello world') self.assertIsNone(result) assert 3 == get_categories_mock.call_count, \ get_categories_mock.call_count cat_mock.get_tally.assert_called_once_with()
def test_classify(self, get_categories_mock): cat1_mock = mock.MagicMock() cat1_mock.get_token_count.return_value = 2 cat1_mock.get_tally.return_value = 8 cat2_mock = mock.MagicMock() cat2_mock.get_token_count.return_value = 4 cat2_mock.get_tally.return_value = 32 get_categories_mock.return_value = {'foo': cat1_mock, 'bar': cat2_mock} sb = SimpleBayes() sb.calculate_category_probability() result = sb.classify('hello world') self.assertEqual('bar', result) assert 3 == get_categories_mock.call_count, \ get_categories_mock.call_count cat1_mock.get_token_count.assert_any_call('hello') cat1_mock.get_token_count.assert_any_call('world') cat1_mock.get_tally.assert_called_once_with() cat2_mock.get_token_count.assert_any_call('hello') cat2_mock.get_token_count.assert_any_call('world') cat2_mock.get_tally.assert_called_once_with()