"""Tests for ActivityDetectorFeed module and class methods.""" from collections import OrderedDict from datetime import date from unittest import TestCase from unittest.mock import patch from feed_status.models import activity_detector_feed MOCKED_METHOD = ( 'feed_status.models.orm.feed_activity_detector_status' '.FEED_ACTIVITY_DETECTOR_TABLE.query' ) TEST_FEED = activity_detector_feed.ActivityDetectorFeed( feed_id='chartmetric_spike_detector', feed_name='Chartmetric spike detector', feed_type=activity_detector_feed.ACTIVITY_DETECTOR_TYPE_DAILY, status_source_db='feed_status', update_freq=1, ) class TestActivityDetectorFeed(TestCase): """Unit tests for ActivityDetectorFeed.""" @patch( MOCKED_METHOD, return_value={ 'Items': [ { 'date': '1900-01-01', 'status': 'processed', }, ], }, ) def test_ad_get_outgoing_feed_history(self, mocked_method): """Test get_outgoing_feed_history method.""" result = activity_detector_feed.get_activity_detector_feed_history( feed=TEST_FEED, from_date=date.fromisoformat('1900-01-01'), to_date=date.fromisoformat('1900-01-02'), ) expected_result = OrderedDict( [ ( '1900-01-02', '--', ), ( '1900-01-01', 'processed', ), ] ) self.assertDictEqual(expected_result, result)