blob: 78eaca667c1382050548f01bcf545e62e734b91f [file] [log] [blame]
#!/usr/bin/env python
# coding=utf-8
try:
import mock
except ImportError:
import unittest.mock as mock
import pandas as pd
from marvin_sms_spam_engine.data_handler import AcquisitorAndCleaner
@mock.patch('marvin_sms_spam_engine.data_handler.acquisitor_and_cleaner.pd.read_csv')
@mock.patch('marvin_sms_spam_engine.data_handler.acquisitor_and_cleaner.MarvinData.download_file')
def test_execute(download_file_mocked, read_csv_mocked, mocked_params):
read_csv_mocked.return_value = pd.DataFrame(data={'v1': ['ham', 'spam'], 'v2': [3, 4], 'Unnamed: 2': [1, 1], 'Unnamed: 3': [1, 1], 'Unnamed: 4': [1, 1]})
ac = AcquisitorAndCleaner()
ac.execute(params=mocked_params)
download_file_mocked.assert_called_with("https://s3.amazonaws.com/marvin-engines-data/spam.csv")
read_csv_mocked.assert_called_once()
assert str(ac.marvin_initial_dataset['label_num'][0]) == '0'
assert not ac._params