blob: ae541c35693ddbb4c35e88410c00701976206c21 [file] [log] [blame]
#!/usr/bin/env python
# coding=utf-8
try:
import mock
except ImportError:
import unittest.mock as mock
from marvin_sms_spam_engine.training import MetricsEvaluator
from sklearn.naive_bayes import MultinomialNB
import pandas as pd
@mock.patch('marvin_sms_spam_engine.training.metrics_evaluator.accuracy_score')
def test_execute(accuracy_score_mocked, mocked_params):
feature_df = pd.DataFrame(data={'col1': [1, 2], 'col2': [3, 4]})
label_df = pd.DataFrame(data={'col1': [0, 1]})
clf_tmp = MultinomialNB().fit(feature_df, label_df)
model_mocked = {"clf": clf_tmp}
data_source = {
"X_test": [1, 2],
"y_test": [3, 4]
}
ac = MetricsEvaluator(model=model_mocked, dataset=data_source)
ac.execute(params=mocked_params)
accuracy_score_mocked.assert_called_once()
assert not ac._params